Commit Graph

25661 Commits

Author SHA1 Message Date
Fabien Potencier
25df7a19a8 bumped Symfony version to 3.3.2 2017-06-05 11:41:08 -07:00
Yonel Ceruto
7061bfbf3a show unique inherited roles 2017-06-05 14:17:49 -04:00
Fabien Potencier
af5522ebf8 updated VERSION for 3.3.1 2017-06-05 10:31:57 -07:00
Fabien Potencier
085d8fec5d bug #23067 [HttpFoundation][FrameworkBundle] Revert "trusted proxies" BC break (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpFoundation][FrameworkBundle] Revert "trusted proxies" BC break

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

Basically reverts #22238 + cleanups some comments + adds missing syncing logic in setTrustedHeaderName.

The reason for this proposal is that the BC break can go un-noticed until prod, *even if you have proper CI*. That's because your CI may not replicate exactly what your prod have (ie a reverse proxy), so that maybe only prod has a trusted-proxies configuration. I realized this while thinking about #23049: it made this situation even more likely, by removing an opportunity for you to notice the break before prod.

The reasons for the BC break are still valid and all of this is security-related. But the core security issue is already fixed. The remaining issue still exists (an heisenbug related to some people having both Forwarded and X-Forwarded-* set for some reason), but deprecating might still be enough.

WDYT? (I'm sure everyone is going to be happy with the BC break reversal, but I'm asking for feedback from people who actually could take the time to *understand* and *balance* the rationales here, thanks :) )

Commits
-------

2132333059 [HttpFoundation][FrameworkBundle] Revert "trusted proxies" BC break
2017-06-05 10:06:12 -07:00
Maxime Steinhausser
21ef065594 [HttpKernel][Debug] Fix missing trace on deprecations collected during bootstrapping & silenced errors 2017-06-05 18:30:56 +02:00
Fabien Potencier
58f03a734f bug #23065 [Cache] Fallback to positional when keyed results are broken (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[Cache] Fallback to positional when keyed results are broken

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

Works around https://github.com/krakjoe/apcu/issues/247 ~~and https://github.com/facebook/hhvm/issues/7867~~

Commits
-------

28aaa8eb05 [Cache] Fallback to positional when keyed results are broken
2017-06-05 09:27:18 -07:00
Fabien Potencier
1272d2ac8a bug #22981 [DependencyInjection] Fix named args support in ChildDefinition (dunglas)
This PR was squashed before being merged into the 3.3 branch (closes #22981).

Discussion
----------

[DependencyInjection] Fix named args support in ChildDefinition

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Following @Tobion's review of #21383.

Commits
-------

1ab3e413d4 [DependencyInjection] Fix named args support in ChildDefinition
2017-06-05 09:24:57 -07:00
Kévin Dunglas
1ab3e413d4 [DependencyInjection] Fix named args support in ChildDefinition 2017-06-05 09:24:55 -07:00
Nicolas Grekas
28aaa8eb05 [Cache] Fallback to positional when keyed results are broken 2017-06-05 16:53:36 +02:00
Nicolas Grekas
2132333059 [HttpFoundation][FrameworkBundle] Revert "trusted proxies" BC break 2017-06-05 15:06:51 +02:00
Martin Kirilov
405f64bb01 [Cache] MemcachedAdapter not working with TagAwareAdapter
It seems that when MemcachedAdapter is used with TagAwareAdapter, it fails to fetch items, even though I thoroughly tested fetching items with the exact same keys under the same namespace.

Turns out the issue lies in `const TAGS_PREFIX = "\0tags\0";` for unknown to me reasons. Hardcoding that to '__tags__' in my project did the trick and I've been using it for a couple of days now and it seems fine.

The reason I had to completely copy/paste this file in my local project is self:: instead of static:: usage. I am not sure whether that is a mistake or is done on purpose, but in order to have this work for me I need to be able to override that constant. Going with static:: seems like a good solution to me, then I can set whatever prefix I need for the tags.
2017-06-05 12:44:43 +02:00
Maxime Steinhausser
5b819ebfee Remove closure-proxy leftovers 2017-06-04 20:15:29 +02:00
Fabien Potencier
5859703be4 bug #23050 [Form][Profiler] Fixes form collector triggering deprecations (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[Form][Profiler] Fixes form collector triggering deprecations

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

Since 3.3, if you inspect your logs when accessing the form profiler panel, you'll see some of these:

```sh
php.INFO: User Deprecated: The Symfony\Bundle\WebProfilerBundle\Twig\WebProfilerExtension::dumpValue() method is deprecated since version 3.2 and will be removed in 4.0.
[...] at /src/Symfony/Bundle/WebProfilerBundle/Twig/WebProfilerExtension.php:119
```

The [WebProfilerExtension](https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/WebProfilerBundle/Twig/WebProfilerExtension.php#L73) is still using a `ValueExporter` instance for BC reasons when the $value ins't an instance of `Data` and this BC layer will be removed in 4.0 (so it'll throw an exception/error when trying to use it with something else than a `Data` instance).

The issue is since #21638, collectors (including forms one) have been drastically simplified to leverage the "seamless usage of Data clones", which is great!... But there is a slightly different implementation between `Data::seek()` and [`Data::__get()`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/VarDumper/Cloner/Data.php#L123-L130). There are probably good reasons for this, but it prevents from using classic Twig property access when the underlying data may be a scalar (`null`, `false`, ...).

I already spot that while working on the [Validator panel](https://github.com/symfony/symfony/pull/22554/files#diff-deac3c5ce4aa87243093dcd6a3f77a56R84). Perhaps there is a better solution, though.

Anyway, current `master` is currently broken, as it still tries to use the `ValueExporter`, which is already removed. And removing the BC layer in `WebProfilerExtension` isn't enough for now. It needs this fix.

BTW it also fixes rendering of the concerned inlined-dumps:

|Before|After|
|--|--|
|<img width="818" alt="screenshot 2017-06-03 a 13 35 25" src="https://cloud.githubusercontent.com/assets/2211145/26753222/01a692e6-4862-11e7-90d5-9cc9e4832648.PNG">|<img width="817" alt="screenshot 2017-06-03 a 13 35 47" src="https://cloud.githubusercontent.com/assets/2211145/26753224/090d5d6c-4862-11e7-87c1-73d5346f602c.PNG">|

Commits
-------

9de898d69f [Form][Profiler] Fixes form collector triggering deprecations
2017-06-03 09:03:25 -07:00
Fabien Potencier
6b9ff814c8 bug #22971 [Profiler] Fix code excerpt wrapping (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[Profiler] Fix code excerpt wrapping

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

|Before|After|
|--|--|
|<img width="1346" alt="screenshot 2017-05-30 a 19 09 03" src="https://cloud.githubusercontent.com/assets/2211145/26595449/b8c4302c-456b-11e7-83c4-3471f915437b.PNG">|<img width="1075" alt="screenshot 2017-05-30 a 19 09 35" src="https://cloud.githubusercontent.com/assets/2211145/26595450/b8c61e64-456b-11e7-8b33-bdbe2e90b160.PNG">|

However, I think my own preference for code excerpts would be to never wrap, at the risk of scrolling horizontally. 1024px is enough to read most of the code excerpt without scrolling, and it feels less messy (to me) when a line is too long. WDYT?

Commits
-------

6c87863a0e [Profiler] Never wrap in code excerpts
2017-06-03 08:56:03 -07:00
Fabien Potencier
7183be3739 bug #23049 [FrameworkBundle] mitigate BC break with empty trusted_proxies (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle] mitigate BC break with empty trusted_proxies

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | kind of
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/22238#issuecomment-305932238
| License       | MIT
| Doc PR        |

Commits
-------

ff055ef7f3 mitigate BC break with empty trusted_proxies
2017-06-03 08:54:50 -07:00
Fabien Potencier
621b7698fb bug #22936 [Form] Mix attr option between guessed options and user options (yceruto)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Mix attr option between guessed options and user options

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

Commits
-------

84f5de902d mix attr options between type-guess options and user options
2017-06-03 08:53:19 -07:00
Fabien Potencier
12f5636eae bug #22976 [DependencyInjection] Use more clear message when unused environment variables detected (voronkovich)
This PR was squashed before being merged into the 3.2 branch (closes #22976).

Discussion
----------

[DependencyInjection] Use more clear message when unused environment variables detected

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

Old error message:
```
Incompatible use of dynamic environment variables "DATABASE_URL", "MAILER_URL" found in parameters.
```

New error message:
```
Environment variables "DATABASE_URL", "MAILER_URL" are never used. Please, check your container's configuration.
```

Commits
-------

6dbdb1b750 [DependencyInjection] Use more clear message when unused environment variables detected
2017-06-03 08:50:21 -07:00
Oleg Voronkovich
6dbdb1b750 [DependencyInjection] Use more clear message when unused environment variables detected 2017-06-03 08:50:11 -07:00
Maxime Steinhausser
9de898d69f [Form][Profiler] Fixes form collector triggering deprecations 2017-06-03 13:15:34 +02:00
Christian Flothmann
ff055ef7f3 mitigate BC break with empty trusted_proxies 2017-06-03 13:02:13 +02:00
Nicolas Grekas
8d58b50ffd Merge branch '3.2' into 3.3
* 3.2:
  [Form][FrameworkBundle] Remove non-existing arg for data_collector.form
  [Cache] fix Redis scheme detection
2017-06-03 10:42:48 +02:00
Nicolas Grekas
7078cdfb5c bug #23045 [Cache] fix Redis scheme detection (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Cache] fix Redis scheme detection

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

Commits
-------

61685c7 [Cache] fix Redis scheme detection
2017-06-03 10:40:33 +02:00
Maxime Steinhausser
6c87863a0e [Profiler] Never wrap in code excerpts 2017-06-03 10:37:07 +02:00
Nicolas Grekas
3e92637635 minor #23048 [Form][FrameworkBundle] Remove non-existing arg for data_collector.form (ogizanagi)
This PR was merged into the 3.2 branch.

Discussion
----------

[Form][FrameworkBundle] Remove non-existing arg for data_collector.form

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

Commits
-------

479895f [Form][FrameworkBundle] Remove non-existing arg for data_collector.form
2017-06-03 10:32:43 +02:00
Maxime Steinhausser
479895f667 [Form][FrameworkBundle] Remove non-existing arg for data_collector.form 2017-06-03 10:06:02 +02:00
Christian Flothmann
0068968dcc explain that a role can be an instance of Role
Only mentioning the RoleInterface seems to be confusing as it is
deprecated since Symfony 3.3.
2017-06-03 10:00:53 +02:00
Christian Flothmann
61685c7106 [Cache] fix Redis scheme detection 2017-06-03 09:31:39 +02:00
Fabien Potencier
d0aa4d93dd minor #23031 [Yaml] Clarify "incompatible key casting" deprecation message (rvanlaak)
This PR was squashed before being merged into the 3.3 branch (closes #23031).

Discussion
----------

[Yaml] Clarify "incompatible key casting" deprecation message

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

In the process of upgrading to Symfony 3.3 our Yaml linter tests started throwing errors. The exception was a bit unclear to us, so hope this message will help others with fixing their deprecations as well.

Commits
-------

67895f4dd3 [Yaml] Clarify "incompatible key casting" deprecation message
2017-06-02 15:05:06 -07:00
Richard van Laak
67895f4dd3 [Yaml] Clarify "incompatible key casting" deprecation message 2017-06-02 15:05:04 -07:00
Fabien Potencier
f0519486f2 bug #23013 Parse the _controller format in sub-requests (weaverryan)
This PR was merged into the 3.3 branch.

Discussion
----------

Parse the _controller format in sub-requests

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | possibly (edge case)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #22966
| License       | MIT
| Doc PR        | n/a

As mentioned on the issue (https://github.com/symfony/symfony/issues/22966#issuecomment-305289227), the new "controller service args" functionality relies on the `_controller` attribute to be in either the service format `App\Controller\Foo:bar` or at least the final parsed format `App\Controller\Foo::bar`. But when you make a sub-request with the `App:Foo:bar` format, the `ControllerResolver` correctly parses this, but the `_controller` request attribute will always contain the original `App:Foo:bar` format. That causes the `ServiceValueResolver` to fail.

The only way I can think to fix this - reliably - is to parse the `_controller` attribute in a listener. And this, works great! Notes:

A) There is a small chance for a BC break: if you were relying on the `_controller` old format in a `kernel.request` format in the framework, in a listener between the priority of 25 and 31 for sub-requests (because normal requests have `_controller` normalized during routing)... then you will see a behavior change.

B) We could load the `ControllerNameParser` lazily via a service locator.

C) We could deprecate calling the parser in the FW's `ControllerResolver`. Along with (B), I think it would (in 4.0) mean that the `ControllerNameParser` is not instantiated at runtime (except for sub-requests).

If someone can think of a different/better solution, please let me know!

Cheers!

Commits
-------

9578fd3eb6 Adding a new event subscriber that "parses" the _controller attribute in the FW
2017-06-02 14:53:18 -07:00
Fabien Potencier
c88a00611a bug #23015 [PhpUnitBridge] Fix detection of PHPUnit 5 (enumag)
This PR was merged into the 3.3 branch.

Discussion
----------

[PhpUnitBridge] Fix detection of PHPUnit 5

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

Codeception 2.3 supports both PHPUnit 5 and PHPUnit 6 by defining [aliases](https://github.com/Codeception/Codeception/blob/2.3/shim.php). This confuses symfony/phpunit-bridge and it tries to load  BC code for PHPUnit 5 even though I'm using PHPUnit 6.

Commits
-------

dfb5549f63 [PhpUnitBridge] Fix detection of PHPUnit 5
2017-06-02 14:49:52 -07:00
Fabien Potencier
3594bb49d6 minor #23043 minor #23043 add \ to PHP_VERSION_ID fixes #22650 (vincentaubert)
This PR was squashed before being merged into the 3.3 branch (closes #23043).

Discussion
----------

minor #23043 add \ to PHP_VERSION_ID fixes #22650

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

this PR is the last one fixing the \ before PHP_VERSION_ID closes definitively #22650

Commits
-------

d3e6a2d6f6 minor #23043 add \ to PHP_VERSION_ID fixes #22650
2017-06-02 13:45:37 -07:00
Vincent AUBERT
d3e6a2d6f6 minor #23043 add \ to PHP_VERSION_ID fixes #22650 2017-06-02 13:45:37 -07:00
Nicolas Grekas
2a293692f2 [Console] Add missing dev-dep 2017-06-02 21:24:58 +02:00
Nicolas Grekas
86bf26c466 [Config] Always protect ClassExistenceResource against bad parents 2017-06-02 20:07:20 +02:00
Nicolas Grekas
349e5fe9b8 Merge branch '3.2' into 3.3
* 3.2:
  typo
  CS: adjust chaining indentation
2017-06-02 16:38:05 +02:00
Nicolas Grekas
89c3f5cccb Merge branch '2.8' into 3.2
* 2.8:
  typo
  CS: adjust chaining indentation
2017-06-02 16:37:52 +02:00
Nicolas Grekas
0057459882 Merge branch '2.7' into 2.8
* 2.7:
  CS: adjust chaining indentation
2017-06-02 16:36:56 +02:00
Nicolas Grekas
1542925d8d minor #22986 CS: adjust chaining indentation (keradus)
This PR was merged into the 2.7 branch.

Discussion
----------

CS: adjust chaining indentation

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

Commits
-------

8c3c0fe CS: adjust chaining indentation
2017-06-02 16:34:38 +02:00
Nicolas Grekas
d89670461d Fix composer deps 2017-06-02 14:59:20 +02:00
Nicolas Grekas
1945bcf6c7 typo 2017-06-02 12:45:29 +02:00
Nicolas Grekas
4ad0dbf584 Merge branch '3.2' into 3.3
* 3.2:
  Fix optional cache warmers are always instantiated whereas they should be lazy-loaded
  add some \ on PHP_VERSION_ID for 2.8
  [PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string
2017-06-02 11:51:43 +02:00
Nicolas Grekas
fe4d885c4c Merge branch '2.8' into 3.2
* 2.8:
  Fix optional cache warmers are always instantiated whereas they should be lazy-loaded
  add some \ on PHP_VERSION_ID for 2.8
  [PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string
2017-06-02 11:43:35 +02:00
Nicolas Grekas
7632bed9ee bug #22988 [PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string (dunglas)
This PR was merged into the 2.8 branch.

Discussion
----------

[PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

According to the Doctrine's docs, the `bigint` type is converted to a `string`: http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/types.html#bigint

/cc @clementtalleu

Commits
-------

47d5e6b [PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string
2017-06-02 11:24:55 +02:00
Nicolas Grekas
ec6b88257b minor #23028 add some \ on PHP_VERSION_ID for 2.8 (vincentaubert)
This PR was merged into the 2.8 branch.

Discussion
----------

add some \ on PHP_VERSION_ID for 2.8

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

Commits
-------

7f4824c add some \ on PHP_VERSION_ID for 2.8
2017-06-02 11:17:34 +02:00
Nicolas Grekas
7a57644a8f bug #23014 [2.8]Fix optional cache warmers are always instantiated whereas they should be lazy-loaded (romainneutron)
This PR was merged into the 2.8 branch.

Discussion
----------

[2.8]Fix optional cache warmers are always instantiated whereas they should be lazy-loaded

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | N/A
| License       | MIT
| Doc PR        | N/A

Since version 2.8, if a Twig extension throws an exception in constructor, then the Kernel can not boot anymore because a service used by the Twig cache warmer instantiates Twig. As Twig cache warmer is optional, Twig should not be loaded at Kernel boot, and this patch fixes the issue

Commits
-------

3371db9 Fix optional cache warmers are always instantiated whereas they should be lazy-loaded
2017-06-02 11:15:27 +02:00
Nicolas Grekas
018b1a3d2d feature #23022 [Di] Remove closure-proxy arguments (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[Di] Remove closure-proxy arguments

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

With #23008, we don't need this in core anymore.
Let's drop it now.
Technically that's a BC break, but for a feature that is very new, and still quite hidden.
Doing this now would save us from maintaining this code, and help reduce the overall complexity.

Basically reverts #20953

Commits
-------

57daadb [Di] Remove closure-proxy arguments
2017-06-02 11:10:29 +02:00
Nicolas Grekas
8d609d9bba fix merge 2017-06-02 11:00:03 +02:00
Nicolas Grekas
e5a698e215 Merge branch '3.2' into 3.3
* 3.2:
  typo
  [EventDispatcher] Fix ContainerAwareEventDispatcher::hasListeners(null)
  Use namespaced Twig
2017-06-02 10:55:39 +02:00
Nicolas Grekas
59751226e2 Merge branch '2.8' into 3.2
* 2.8:
  typo
2017-06-02 10:29:21 +02:00
Nicolas Grekas
99e0836fd4 typo 2017-06-02 10:28:06 +02:00
Nicolas Grekas
a6b525e136 Merge branch '2.8' into 3.2
* 2.8:
  [EventDispatcher] Fix ContainerAwareEventDispatcher::hasListeners(null)
  Use namespaced Twig
2017-06-02 10:26:05 +02:00
Romain Neutron
3371db9f8c
Fix optional cache warmers are always instantiated whereas they should be lazy-loaded 2017-06-02 09:53:17 +02:00
Nicolas Grekas
434c8334ed Merge branch '2.7' into 2.8
* 2.7:
  [EventDispatcher] Fix ContainerAwareEventDispatcher::hasListeners(null)
  Use namespaced Twig
2017-06-02 09:47:27 +02:00
Nicolas Grekas
36f00509bc minor #22962 Use namespaced Twig (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

Use namespaced Twig

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | needs https://github.com/twigphp/Twig/pull/2490 and https://github.com/twigphp/Twig/pull/2491
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

c3d1262 Use namespaced Twig
2017-06-02 09:20:11 +02:00
Vincent AUBERT
7f4824c987 add some \ on PHP_VERSION_ID for 2.8 2017-06-02 07:32:06 +02:00
Nicolas Grekas
e7c4149e78 [EventDispatcher] Fix ContainerAwareEventDispatcher::hasListeners(null) 2017-06-01 23:49:12 +02:00
Nicolas Grekas
c3d1262208 Use namespaced Twig 2017-06-01 23:44:38 +02:00
Fabien Potencier
60b89bb67f Merge branch '3.2' into 3.3
* 3.2:
  Using FQ name for PHP_VERSION_ID
  [Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323
  Harden the debugging of Twig filters and functions
  bumped Symfony version to 3.2.10
  updated VERSION for 3.2.9
  updated CHANGELOG for 3.2.9
  bumped Symfony version to 2.8.22
  updated VERSION for 2.8.21
  updated CHANGELOG for 2.8.21
  bumped Symfony version to 2.7.29
  updated VERSION for 2.7.28
  update CONTRIBUTORS for 2.7.28
  updated CHANGELOG for 2.7.28
2017-06-01 14:01:25 -07:00
Fabien Potencier
2c57bf20ad Merge branch '2.8' into 3.2
* 2.8:
  Using FQ name for PHP_VERSION_ID
  [Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323
  Harden the debugging of Twig filters and functions
  bumped Symfony version to 2.8.22
  updated VERSION for 2.8.21
  updated CHANGELOG for 2.8.21
  bumped Symfony version to 2.7.29
  updated VERSION for 2.7.28
  update CONTRIBUTORS for 2.7.28
  updated CHANGELOG for 2.7.28
2017-06-01 14:00:24 -07:00
Nicolas Grekas
57daadbf67 [Di] Remove closure-proxy arguments 2017-06-01 22:59:07 +02:00
Fabien Potencier
bd62b148db Merge branch '2.7' into 2.8
* 2.7:
  Using FQ name for PHP_VERSION_ID
  [Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323
  Harden the debugging of Twig filters and functions
  bumped Symfony version to 2.7.29
  updated VERSION for 2.7.28
  update CONTRIBUTORS for 2.7.28
  updated CHANGELOG for 2.7.28
2017-06-01 13:52:29 -07:00
Fabien Potencier
3fc1189910 bug #23008 [EventDispatcher] Handle laziness internally instead of relying on ClosureProxyArgument (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[EventDispatcher] Handle laziness internally instead of relying on ClosureProxyArgument

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

If we decide to go this way, we might drop ClosureProxyArgument entirely because we won't need it internally. I'll propose it in another PR for discussion if this one is accepted.

This PR allows "high-order" listeners, as `array(Closure, method)`. Closure is called to get the actual instance when needed only.

How does it look to you? (I'll add tests once confirmed)

Commits
-------

c17a009d66 [EventDispatcher] Handle laziness internally instead of relying on ClosureProxyArgument
2017-06-01 13:46:45 -07:00
Fabien Potencier
f91a020b84 Using FQ name for PHP_VERSION_ID 2017-06-01 13:44:56 -07:00
Nicolas Grekas
c17a009d66 [EventDispatcher] Handle laziness internally instead of relying on ClosureProxyArgument 2017-06-01 20:27:22 +02:00
Fabien Potencier
156a50d124 bug #23018 [FrameworkBundle] Fix CacheCollectorPass priority (chalasr)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle] Fix CacheCollectorPass priority

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony/pull/22960#issuecomment-305460507

It was run before optimization, so child definitions were not resolved yet.

Commits
-------

28b253ab40 Fix CacheCollectorPass priority
2017-06-01 10:43:34 -07:00
Fabien Potencier
f32ec458be bug #23009 [Routing] Allow GET requests to be redirected. Fixes #23004 (frankdejonge)
This PR was merged into the 3.3 branch.

Discussion
----------

[Routing] Allow GET requests to be redirected. Fixes #23004

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

GET requests didn't get the same redirect treatment as HEAD requests. I've also added tests cases for all the different trailing/non-trailing slash situations.

Commits
-------

71d4e366a9 [Routing] Allow GET requests to be redirected. Fixes #23004
2017-06-01 10:33:26 -07:00
Robin Chalas
28b253ab40 Fix CacheCollectorPass priority 2017-06-01 19:06:24 +02:00
Jáchym Toušek
dfb5549f63
[PhpUnitBridge] Fix detection of PHPUnit 5 2017-06-01 16:45:22 +02:00
Ryan Weaver
9578fd3eb6 Adding a new event subscriber that "parses" the _controller attribute in the FW 2017-06-01 10:00:07 -04:00
Nicolas Grekas
36bd06a152 bug #22996 [2.7][Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323 (romainneutron)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7][Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323

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

The issue is documented here.
The current symfony code works when `intl.use_exception` is off. however, it's on on PHP 7+ and the issue is reproducible. See https://3v4l.org/PllP1 and https://3v4l.org/3XnKI

Commits
-------

f42c73f [Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323
2017-06-01 14:45:44 +02:00
Romain Neutron
f42c73f213
[Form] Fix \IntlDateFormatter timezone parameter usage to bypass PHP bug #66323 2017-06-01 11:48:44 +02:00
Frank de Jonge
71d4e366a9 [Routing] Allow GET requests to be redirected. Fixes #23004 2017-06-01 11:46:06 +02:00
Nicolas Grekas
996698d996 [DI] Deal with inlined non-shared services 2017-06-01 08:31:18 +02:00
Fabien Potencier
7a9875c3cd bug #22965 [Cache] Ignore missing annotations.php (ro0NL)
This PR was squashed before being merged into the 3.3 branch (closes #22965).

Discussion
----------

[Cache] Ignore missing annotations.php

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes (different in 3.2)
| 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-->

Avoids the following notices if cache is not warmed up (i.e. `cache:clear --no-warmup` > hit the browser).

```
Warning: include(<base-path>/app/cache/<env>/annotations.php): failed to open stream: No such file or directory

Warning: include(): Failed opening '<base-path>/app/cache/<env>/annotations.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php')
```

Commits
-------

e8f70c75b9 [Cache] Ignore missing annotations.php
2017-05-31 11:18:45 -07:00
Roland Franssen
e8f70c75b9 [Cache] Ignore missing annotations.php 2017-05-31 11:18:44 -07:00
Fabien Potencier
9cd68ee77e bug #22993 [DI] Autowiring exception thrown when inlined service is removed (weaverryan)
This PR was squashed before being merged into the 3.3 branch (closes #22993).

Discussion
----------

[DI] Autowiring exception thrown when inlined service is removed

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | yes (on a new & internal method)
| Tests pass?   | yes
| Fixed tickets | #22977
| License       | MIT
| Doc PR        | n/a

We suppress autowiring exceptions if a service is ultimately removed from the container. This fixes a bug where we incorrectly report that a service was NOT removed, when really, it WAS removed. This happens when `ServiceA` is inlined in `ServiceB`... but then `ServiceB` is removed from the container for being unused.

Commits
-------

793b9a001f [DI] Autowiring exception thrown when inlined service is removed
2017-05-31 11:16:22 -07:00
Ryan Weaver
793b9a001f [DI] Autowiring exception thrown when inlined service is removed 2017-05-31 11:16:20 -07:00
Fabien Potencier
5e40e19081 bug #22999 Better DI type deprecation message (weaverryan)
This PR was merged into the 3.3 branch.

Discussion
----------

Better DI type deprecation message

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

This is the most common autowiring deprecation:

```php
public function __construct(UserPasswordEncoder $encoder)
```

You *should* type-hint `UserPasswordEncoderInterface`

Current deprecation message:
> Autowiring services based on the types they implement is deprecated since Symfony 3.3 and won’t be supported in version 4.0. You should rename (or alias) the "security.user_password_encoder.generic" service to "Symfony\Component\Security\Core\Encoder\UserPasswordEncoder" instead.

Updated message:
> Autowiring services based on the types they implement is deprecated since Symfony 3.3 and won't be supported in version 4.0. Try changing the type-hint for argument "$encoder" of method "AppBundle\Service\TestServiceSubscriber::__construct()" to "Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface" instead.

This only happens if we detect that there is a service/alias in the container (e.g. `...\UserPasswordEncoderInterface`) for the type-hint (`...\UserPasswordEncoder)`. Otherwise, if there is no correct type-hint in the container, we give the old recommendation (about aliasing).

The only complex case (of giving good directions on *where* to fix things) is with a class that implements `ServiceSubscriberInterface` (where the type-hint is in the `getSusbcribedServices()` method). In that case, the notice is:

> Autowiring services based on the types they implement is deprecated since Symfony 3.3 and won't be supported in version 4.0. Try changing the type-hint for "Symfony\Component\Security\Core\Encoder\UserPasswordEncoder" in "AppBundle\Service\TestServiceSubscriber" to "Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface" instead.

Commits
-------

a990d5c558 Improving deprecation message when hitting the "deprecated type" lookup, but an alias is available
2017-05-31 11:14:35 -07:00
Fabien Potencier
b13671957b bug #22985 [Config] Allow empty globs (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[Config] Allow empty globs

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

This considers globs as valid even if they return no matches when they have a prefix (and when that prefix exists, according to `$ignoreErrors`).
This means there is an edge-case:
`*.abc` with at least one match is OK, but when it has no match, it falls back to regular import, then usually will fil.
But rewriting this to `./*.abc` resolves the ambiguity and turns this into a glob that won't fail if no matches are found.

This should provide the expected behavior in most cases (but ambiguous described one of course).

Commits
-------

c5b9c1a8c8 [Config] Allow empty globs
2017-05-31 11:07:24 -07:00
Fabien Potencier
e87994502c bug #22961 [HttpKernel] Support unknown format in LoggerDataCollector (iltar)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] Support unknown format in LoggerDataCollector

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

The new expected format for the compiler log is `CompilerPassClass: Message`. However, this is not enforced by the old logging method as seen in schmittjoh/JMSDiExtraBundle#276

This PR adds the ability to read those lines without crashing with `Uncaught Notice: Undefined offset: 1`.

Please note that I have not tested this in an application so testers are welcome to confirm this fix!

Commits
-------

a8dfbb1180 Support unknown compiler log format
2017-05-31 11:00:08 -07:00
Ryan Weaver
a990d5c558 Improving deprecation message when hitting the "deprecated type" lookup, but an alias is available 2017-05-31 13:54:02 -04:00
Fabien Potencier
44f34825a6 bug #22991 [DI] Don't throw Autowire exception for removed service with private __construct (weaverryan)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Don't throw Autowire exception for removed service with private __construct

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none (was talking to a user)
| License       | MIT
| Doc PR        | n/a

Suppose you have:

```php
class A
{
    private function construct() {}
}
```

This service will fail to be autowired. But, like other autowiring failures, if this service will ultimately be removed from the container, this exception should be ignored. This fixes that. Unless someone is using the `AutowirePass` directly inside a `try/catch`, there is no BC break (the behavior change is that the exception is now stored, instead of being thrown).

This also clarifies (in the test & phpdoc) that `AutowirePass` always throws `AutowiringFailedException`s.

Thanks!

Commits
-------

2d3e44e11e Fixing a bug where an autowiring exception was thrown even when that service was removed
2017-05-31 10:51:11 -07:00
Fabien Potencier
9724e8b22f bug #22968 [Profiler] Fix text selection & click on file links on exception pages (ogizanagi)
This PR was squashed before being merged into the 3.3 branch (closes #22968).

Discussion
----------

[Profiler] Fix text selection & click on file links on exception pages

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

I don't really know the purpose of this css rule here, but I admit it's quite frustrating not to be able to select something here.

This PR also prevents the following annoying behavior (selecting text collapses/uncollapses traces):
![mai-30-2017 18-26-29](https://cloud.githubusercontent.com/assets/2211145/26593977/3afbc510-4566-11e7-9114-8934ba6126a2.gif)

About the trick used, I think the browser support is safe enough: https://caniuse.com/#search=window.getSelection

EDIT: new commit added which allows to fix #22978

Commits
-------

8618399e42 [Profiler] Fix clicking on links inside toggle
ff6151b15f [Profiler] Fix text selection on exception pages
2017-05-31 10:44:02 -07:00
Christophe Coevoet
63a8aff2c8 Harden the debugging of Twig filters and functions
Removing the environment and context arguments is now based on Twig metadata
rather than on some wild guessing which might go wrong.
2017-05-31 17:20:46 +02:00
Ryan Weaver
2d3e44e11e Fixing a bug where an autowiring exception was thrown even when that service was removed
The specific report was for a service with a private constructor. This also clarifies
that the AutowirePass throws AutowiringFailedException for all situations. And a bug
was fixed in the constructor of AutowiringFailedException
2017-05-31 09:52:17 -04:00
Robin Chalas
a3793198fa Remove extra arg in call to TraceableAdapter::start() 2017-05-31 13:48:12 +02:00
Kévin Dunglas
47d5e6b82c
[PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string 2017-05-31 12:58:03 +02:00
Iltar van der Berg
a8dfbb1180 Support unknown compiler log format 2017-05-31 12:12:10 +02:00
Dariusz
8c3c0fe65e CS: adjust chaining indentation 2017-05-31 11:30:46 +02:00
Nicolas Grekas
c5b9c1a8c8 [Config] Allow empty globs 2017-05-31 10:49:17 +02:00
Robin Chalas
28e615a656 Fix decorating TagAware adapters in dev 2017-05-31 10:24:58 +02:00
Maxime Steinhausser
8618399e42 [Profiler] Fix clicking on links inside toggle 2017-05-31 01:27:40 +02:00
Maxime Steinhausser
ff6151b15f [Profiler] Fix text selection on exception pages 2017-05-30 18:34:49 +02:00
Michał Kurzeja
65297de3aa #22839 - changed debug toolbar dump section to relative and use full window width 2017-05-30 10:18:53 +02:00
Fabien Potencier
adc39a2f57 bumped Symfony version to 3.3.1 2017-05-29 14:23:02 -07:00
Fabien Potencier
e6eb52c5e0 updated VERSION for 3.3.0 2017-05-29 14:02:12 -07:00
Fabien Potencier
17deeaf42e bumped Symfony version to 3.2.10 2017-05-29 13:10:37 -07:00
Fabien Potencier
a948880ecb updated VERSION for 3.2.9 2017-05-29 12:32:04 -07:00
Fabien Potencier
af6b25b28c bumped Symfony version to 2.8.22 2017-05-29 12:30:05 -07:00
Fabien Potencier
ecf57807c8 updated VERSION for 2.8.21 2017-05-29 12:14:58 -07:00
Fabien Potencier
aa04f35092 bumped Symfony version to 2.7.29 2017-05-29 12:14:01 -07:00
Fabien Potencier
a13a17ad04 updated VERSION for 2.7.28 2017-05-29 12:04:18 -07:00
Fabien Potencier
1fba4d6020 Merge branch '3.2' into 3.3
* 3.2:
  [Form] fix guesed value param type in docblock
2017-05-29 11:50:47 -07:00
Fabien Potencier
538591c21f Merge branch '2.8' into 3.2
* 2.8:
  [Form] fix guesed value param type in docblock
2017-05-29 11:50:38 -07:00
Fabien Potencier
2c84ac23b4 Merge branch '2.7' into 2.8
* 2.7:
  [Form] fix guesed value param type in docblock
2017-05-29 11:50:29 -07:00
Nicolas Grekas
7b4066e8ab [Config] Fallback to regular import when glob fails 2017-05-29 11:41:32 -07:00
Yonel Ceruto
84f5de902d mix attr options between type-guess options and user options 2017-05-29 13:20:45 -04:00
Christian Flothmann
43636ba630 [Form] fix guesed value param type in docblock 2017-05-29 10:38:15 +02:00
Fabien Potencier
daac6dbb41 Merge branch '3.2' into 3.3
* 3.2:
  [Console] ChoiceQuestion must have choices
  [Filesystem] improve error handling in lock()
  [FrameworkBundle][Console] Fix the override of a command registered by the kernel
2017-05-28 07:08:56 -07:00
Fabien Potencier
46fc4c4ae6 Merge branch '2.8' into 3.2
* 2.8:
  [Console] ChoiceQuestion must have choices
  [Filesystem] improve error handling in lock()
  [FrameworkBundle][Console] Fix the override of a command registered by the kernel
2017-05-28 07:08:39 -07:00
Fabien Potencier
44cf367497 Merge branch '2.7' into 2.8
* 2.7:
  [Console] ChoiceQuestion must have choices
  [Filesystem] improve error handling in lock()
  [FrameworkBundle][Console] Fix the override of a command registered by the kernel
2017-05-28 07:07:33 -07:00
Fabien Potencier
20485d1f9b bug #22847 [Console] ChoiceQuestion must have choices (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #22847).

Discussion
----------

[Console] ChoiceQuestion must have choices

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

<!--
![image](https://cloud.githubusercontent.com/assets/1047696/26301309/1bfa52ca-3ee1-11e7-883b-f627f16e9d2f.png)
-->

Commits
-------

96e307fd5c [Console] ChoiceQuestion must have choices
2017-05-28 06:43:15 -07:00
Roland Franssen
96e307fd5c [Console] ChoiceQuestion must have choices 2017-05-28 06:43:13 -07:00
Fabien Potencier
979bd62ed8 bug #22900 [FrameworkBundle][Console] Fix the override of a command registered by the kernel (aaa2000)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle][Console] Fix the override of a command registered by the kernel

| Q             | A
| ------------- | ---
| Branch?       |2.7
| Bug fix?      | yes
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #18558 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        |  <!--highly recommended for new features-->

<!--
- Bug fixes must be submitted against the lowest branch where they apply
  (lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against the 3.4,
  legacy code removals go to the master branch.
- Please fill in this template according to the PR you're about to submit.
- Replace this comment by a description of what your PR is solving.
-->

Fix the override of a command registered by the kernel

Commits
-------

3e6643bd90 [FrameworkBundle][Console] Fix the override of a command registered by the kernel
2017-05-28 06:38:40 -07:00
Nicolas Grekas
934c0c0e9c Revert "bug #22925 [PhpUnitBridge] Adjust PHPUnit class_alias check to also check for namespaced class (GawainLynch)"
This reverts commit cfb090d1c5, reversing
changes made to 4e8f403a7c.
2017-05-28 13:10:04 +02:00
Nicolas Grekas
bb84872e6d Merge branch '3.2' into 3.3
* 3.2:
  typo
  [Console] Fix tests
  [Console] Fixed different behaviour of key and value user inputs in multiple choice question
  [Cache] Dont use pipelining with RedisCluster
  [Yaml] fix colon without space deprecation
  [Intl] Fix intl tests for PHP < 5.5.10
2017-05-28 12:56:20 +02:00
Nicolas Grekas
029f89a7ff typo 2017-05-28 12:47:46 +02:00
Nicolas Grekas
3ac8c5b2e0 bug #22910 [Filesystem] improve error handling in lock() (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Filesystem] improve error handling in lock()

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

Commits
-------

25381a2 [Filesystem] improve error handling in lock()
2017-05-28 11:34:04 +02:00
Nicolas Grekas
88cdd3cca3 bug #22924 [Cache] Dont use pipelining with RedisCluster (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[Cache] Dont use pipelining with RedisCluster

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

phpredis doesn't support pipelining with RedisCluster
see https://github.com/phpredis/phpredis/blob/develop/cluster.markdown#pipelining
and multiple operations (MSET/MGET) work but only "per-shard".

We have to fetch keys one by one for now at least.

Commits
-------

eb93ac9 [Cache] Dont use pipelining with RedisCluster
2017-05-28 11:24:43 +02:00
HeahDude
5e6b3a5886 Fixed options stub values display in form profiler 2017-05-28 02:21:30 +02:00
Maxime Steinhausser
01ca241744 [Console] Fix tests 2017-05-27 23:29:56 +02:00
Fabien Potencier
706ac18d38 Merge branch '2.8' into 3.2
* 2.8:
  [Console] Fixed different behaviour of key and value user inputs in multiple choice question
  [Intl] Fix intl tests for PHP < 5.5.10
2017-05-27 10:24:21 -07:00
Fabien Potencier
2663293522 Merge branch '2.7' into 2.8
* 2.7:
  [Console] Fixed different behaviour of key and value user inputs in multiple choice question
  [Intl] Fix intl tests for PHP < 5.5.10
2017-05-27 10:24:13 -07:00
Fabien Potencier
6f12757505 minor #22761 [Intl] Fix intl tests for PHP < 5.5.10 (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Intl] Fix intl tests for PHP < 5.5.10

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

Should fix tests in upper branches (see https://github.com/symfony/symfony/pull/22760).

Commits
-------

fab0629206 [Intl] Fix intl tests for PHP < 5.5.10
2017-05-27 10:23:24 -07:00
Fabien Potencier
a80348b228 feature #22838 Make the simple exception pages match the new style (javiereguiluz)
This PR was squashed before being merged into the 3.3 branch (closes #22838).

Discussion
----------

Make the simple exception pages match the new style

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

If you create an application with Symfony Flex and don't install the TwigBundle explicitly, you see the exception pages like this:

![before](https://cloud.githubusercontent.com/assets/73419/26286531/3737f41c-3e68-11e7-8f1f-d9454bbc81f2.png)

This PR updates that page to match the style of the rest of exceptions:

![after](https://cloud.githubusercontent.com/assets/73419/26286534/488a2e4c-3e68-11e7-9d9e-8af8a478ff44.png)

For comparison, this is how the full exception page looks:

![full-exception](https://cloud.githubusercontent.com/assets/73419/26286535/56d69f26-3e68-11e7-8068-8334f045a63d.png)

---

Should I add the small black top header with the Symfony logo too?

Commits
-------

bab4b9c23c Make the simple exception pages match the new style
2017-05-27 09:02:28 -07:00
Javier Eguiluz
bab4b9c23c Make the simple exception pages match the new style 2017-05-27 09:02:27 -07:00
Fabien Potencier
1d1d997b5b bug #22718 [Console] Fixed different behaviour of key and value user inputs in multiple choice question (borNfreee)
This PR was squashed before being merged into the 2.7 branch (closes #22718).

Discussion
----------

[Console] Fixed different behaviour of key and value user inputs in multiple choice question

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

Fixed a bug when value from multiple choice list could not be selected by user's input
while it could be selected by typing its index in the list.

Commits
-------

2861bd7b01 [Console] Fixed different behaviour of key and value user inputs in multiple choice question
2017-05-27 07:10:28 -07:00
borNfreee
2861bd7b01 [Console] Fixed different behaviour of key and value user inputs in multiple choice question 2017-05-27 07:10:26 -07:00
Gawain Lynch
7ba3afd859
Adjust PHPUnit class_alias check to also check for namespaced class 2017-05-27 12:34:25 +02:00
Nicolas Grekas
eb93ac904c [Cache] Dont use pipelining with RedisCluster 2017-05-27 12:12:52 +02:00
Fabien Potencier
4e8f403a7c fixed CS 2017-05-26 07:03:51 -07:00
Andreas Schempp
c7ed08e2c0 Only override getProjectDir if it exists in the kernel 2017-05-26 15:28:14 +02:00
Christophe Coevoet
cf60f6d744 feature #22905 [FrameworkBundle][Validator] Move the PSR-11 factory to the component (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle][Validator] Move the PSR-11 factory to the component

| Q             | A
| ------------- | ---
| Branch?       | 3.3 <!-- see comment below -->
| Bug fix?      | no
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | yes <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/22887#issuecomment-303765795 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

Instead of the 3 following deprecations:
 * The `ConstraintValidatorFactory::$validators` and `$container` properties
   have been deprecated and will be removed in 4.0.
 * Extending `ConstraintValidatorFactory` is deprecated and won't be supported in 4.0.
* Passing an array of validators or validator aliases as the second argument of
   `ConstraintValidatorFactory::__construct()` is deprecated since 3.3 and will
   be removed in 4.0. Use the service locator instead.

I'd suggest simply deprecating the FrameworkBundle's class in favor of using a new `ContainerConstraintValidatorFactory`. To me, there is no reason anyone using the validator component without the framework bundle cannot use this PSR-11 compliant implementation, nor I see a reason to make it final.

Commits
-------

68c1917af9 [FrameworkBundle][Validator] Move the PSR-11 factory to the component
2017-05-26 12:01:03 +02:00
Maxime Steinhausser
68c1917af9 [FrameworkBundle][Validator] Move the PSR-11 factory to the component 2017-05-26 10:48:50 +02:00
Christian Flothmann
25381a2809 [Filesystem] improve error handling in lock() 2017-05-26 09:33:33 +02:00
Fabien Potencier
26afd2c1bf bug #22728 [HttpKernel] Fix kernel.project_dir extensibility (chalasr)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] Fix kernel.project_dir extensibility

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

Alternative to #22727 that makes use of the existing public api.

Commits
-------

3230fc7e70 Fix kernel.project_dir extensibility
2017-05-25 16:46:48 -07:00
Fabien Potencier
ec4689122c bug #22829 [Yaml] fix colon without space deprecation (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Yaml] fix colon without space deprecation

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

A colon after a mapping key that is not followed by a space is valid if the mapping key is quoted.

Commits
-------

57f6941e25 [Yaml] fix colon without space deprecation
2017-05-25 16:42:36 -07:00
Fabien Potencier
bf85c7d4e2 Merge branch '3.2' into 3.3
* 3.2:
  [DI] Avoid private call to Container::has()
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 16:10:31 -07:00
Fabien Potencier
810623df5e Merge branch '2.8' into 3.2
* 2.8:
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 15:59:05 -07:00
Fabien Potencier
321e41cb6b Merge branch '2.7' into 2.8
* 2.7:
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 15:57:22 -07:00
Fabien Potencier
966f3877e7 bug #22901 Fix missing abstract key in XmlDumper (weaverryan)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix missing abstract key in XmlDumper

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

Unless I'm missing something, the abstract key was missing in the XmlDumper. I noticed it when using `debug:container some_abstract_service` and was seeing "no" for abstract.

When this merges to 3.3, the `services-abstract.xml` will need to change to this:

```xml
<?xml version="1.0" encoding="utf-8"?>
<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
  <services>
    <service id="service_container" class="Symfony\Component\DependencyInjection\ContainerInterface" synthetic="true"/>
    <service id="foo" class="Foo" abstract="true"/>
    <service id="Psr\Container\ContainerInterface" alias="service_container" public="false"/>
    <service id="Symfony\Component\DependencyInjection\ContainerInterface" alias="service_container" public="false"/>
  </services>
</container>
```

Commits
-------

40f60ec60d Fixing missing abstract attribute in XmlDumper
2017-05-25 15:55:11 -07:00
Fabien Potencier
fa93ff1389 feature #22904 [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes (a missing part of a 3.3 feat.)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

See https://github.com/symfony/symfony-docs/issues/7045

Commits
-------

9ba12b0d2a [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const
2017-05-25 15:25:56 -07:00
Nicolas Grekas
9ba12b0d2a [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const 2017-05-25 15:39:26 +02:00
Nicolas Grekas
1eac1506df bug #22878 [Yaml] parse PHP constants in mapping keys (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] parse PHP constants in mapping keys

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

Commits
-------

ae52fe6 [Yaml] parse PHP constants in mapping keys
2017-05-25 15:35:55 +02:00
Nicolas Grekas
4e95aacc17 bug #22873 [HttpKernel] don't call getTrustedHeaderName() if possible (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] don't call getTrustedHeaderName() if possible

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://travis-ci.org/symfony/symfony/jobs/235008102 (failing tests of #22863)
| License       | MIT
| Doc PR        |

Commits
-------

6350dab don't call getTrustedHeaderName() if possible
2017-05-25 15:34:36 +02:00
Roland Franssen
56892819e3 [DI] Avoid private call to Container::has() 2017-05-25 14:59:08 +02:00
Ryan Weaver
40f60ec60d Fixing missing abstract attribute in XmlDumper
Caused mis-reporting of abstract key (always no) in debug:container
2017-05-25 08:56:45 -04:00
Maxime Steinhausser
a841496238 [Form] Remove DateTimeToStringTransformer $parseUsingPipe option 2017-05-25 12:07:32 +02:00
Nicolas Grekas
2642e725da Merge branch '3.2' into 3.3
* 3.2:
  [CACHE] fix README
2017-05-25 07:53:23 +02:00
Nicolas Grekas
20f52f4f56 feature #22892 [ProxyManager] Add FC layer (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[ProxyManager] Add FC layer

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | yes - minor
| Deprecations? | yes - made a class final
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

This makes PRoxyDumper compatible with DumperInterface v4.0.
Technically, this is a BC break, but since I really don't expect anyone to extend ProxyDumper, I think we should do it - on 3.3 to close the gap as early as possible.

Commits
-------

4aeb6d8 [ProxyManager] Add FC layer
2017-05-25 07:52:28 +02:00
adev
3e6643bd90 [FrameworkBundle][Console] Fix the override of a command registered by the kernel
Fix #18558
2017-05-24 23:07:05 +02:00
Christian Flothmann
ae52fe6dab [Yaml] parse PHP constants in mapping keys 2017-05-24 21:40:35 +02:00
Nicolas Grekas
b0b7a36354 minor #22897 [CACHE] fix README (IndraGunawan)
This PR was merged into the 3.2 branch.

Discussion
----------

[CACHE] fix README

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

Add Resources section to Cache component readme

Commits
-------

c224ad7 [CACHE] fix README
2017-05-24 20:50:14 +02:00
Indra Gunawan
c224ad7770 [CACHE] fix README 2017-05-25 00:25:35 +07:00
Nicolas Grekas
c9da3d9233 Merge branch '3.2' into 3.3
* 3.2:
  [Cache] Fix phpunit.xml.dist
2017-05-24 18:53:35 +02:00
Nicolas Grekas
38a768e3cc [Cache] Fix phpunit.xml.dist 2017-05-24 18:45:53 +02:00
Nicolas Grekas
4aeb6d8749 [ProxyManager] Add FC layer 2017-05-24 18:13:59 +02:00
Nicolas Grekas
b494106e2f Merge branch '3.2' into 3.3
* 3.2:
  [DI] Check privates before aliases consistently
2017-05-24 16:39:04 +02:00
Nicolas Grekas
1d9b1af4a3 [DI] Check privates before aliases consistently 2017-05-24 16:36:51 +02:00
Nicolas Grekas
d7981e5838 Merge branch '3.2' into 3.3
* 3.2:
  [Yaml] Add missing deprecation annotation
  [DI] Check for privates before shared services
2017-05-24 16:31:45 +02:00
Fabien Potencier
69583b2403 bug #22866 [DI] Check for privates before shared services (ro0NL)
This PR was merged into the 3.2 branch.

Discussion
----------

[DI] Check for privates before shared services

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

cc @stof

Commits
-------

4f683a9a5b [DI] Check for privates before shared services
2017-05-24 16:25:02 +02:00
Nicolas Grekas
feaf5c987e Merge branch '3.2' into 3.3
* 3.2:
  [Routing] remove an unused routing fixture
  [WebProfilerBundle] Fix sub-requests display in time profiler panel
  [PhpUnitBridge] add a changelog file
2017-05-24 13:35:23 +02:00
Nicolas Grekas
667efd251e minor #22818 [DependencyInjection] prepare for signature change in 4.0 (xabbuh)
This PR was submitted for the 3.4 branch but it was merged into the 3.3 branch instead (closes #22818).

Discussion
----------

[DependencyInjection] prepare for signature change in 4.0

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

see failing tests in #22785

Commits
-------

c4b6e20 [DI] prepare for signature change in 4.0
2017-05-24 13:33:24 +02:00
Christian Flothmann
c4b6e2014c [DI] prepare for signature change in 4.0 2017-05-24 13:31:33 +02:00
Nicolas Grekas
879c9129b7 feature #22884 [DI] Add missing deprecation on Extension::getClassesToCompile (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Add missing deprecation on Extension::getClassesToCompile

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

Already dropped on master

Commits
-------

95fb929 [DI] Add missing deprecation on Extension::getClassesToCompile
2017-05-24 12:51:20 +02:00
Christian Flothmann
cf458fa871 minor #22883 [Yaml] Add missing deprecation annotation (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[Yaml] Add missing deprecation annotation

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

Commits
-------

c67dd38 [Yaml] Add missing deprecation annotation
2017-05-24 11:51:02 +02:00
Nicolas Grekas
95fb929c58 [DI] Add missing deprecation on Extension::getClassesToCompile 2017-05-24 10:46:17 +02:00
Nicolas Grekas
c67dd3805b [Yaml] Add missing deprecation annotation 2017-05-24 10:41:50 +02:00
Fabien Potencier
df443f023f minor #22881 [Routing] remove an unused routing fixture (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Routing] remove an unused routing fixture

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

This was initially removed in #13361 and accidentally added again
in #11394.

Commits
-------

6f67221129 [Routing] remove an unused routing fixture
2017-05-24 08:39:34 +02:00
Fabien Potencier
047a06e235 bug #22853 [Yaml] fix multiline block handling (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] fix multiline block handling

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #21114, https://github.com/symfony/symfony/pull/22105#issuecomment-288386147
| License       | MIT
| Doc PR        |

Commits
-------

a2079d6e2e [Yaml] fix multiline block handling
2017-05-24 07:58:03 +02:00
Christian Flothmann
6f67221129 [Routing] remove an unused routing fixture
This was initially removed in #13361 and accidentally added again
in #11394.
2017-05-24 00:01:29 +02:00
Christian Flothmann
a2079d6e2e [Yaml] fix multiline block handling 2017-05-23 20:34:36 +02:00
Christian Flothmann
6350dab5bf don't call getTrustedHeaderName() if possible 2017-05-23 20:22:28 +02:00
Roland Franssen
4f683a9a5b [DI] Check for privates before shared services 2017-05-23 19:58:02 +02:00
Nicolas Grekas
d715cc4a27 [WebProfilerBundle] Fix sub-requests display in time profiler panel 2017-05-23 15:50:20 +02:00
Fabien Potencier
aef39bcee5 bug #22872 [FrameworkBundle] Handle project dir in cache:clear command (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle] Handle project dir in cache:clear command

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

Commits
-------

fadffad2aa [FrameworkBundle] Handle project dir in cache:clear command
2017-05-23 14:42:40 +02:00
Nicolas Grekas
fadffad2aa [FrameworkBundle] Handle project dir in cache:clear command 2017-05-23 13:48:44 +02:00
Nicolas Grekas
c91d19574f [WebServerBundle] Mark ServerCommand as internal 2017-05-23 11:11:47 +02:00
Nicolas Grekas
4a766693a8 feature #22808 [FrameworkBundle][Validator] Deprecate passing validator instances/aliases over using the service locator (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle][Validator] Deprecate passing validator instances/aliases over using the service locator

| Q             | A
| ------------- | ---
| Branch?       | 3.3 <!-- see comment below -->
| Bug fix?      | no
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | yes <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/22800#issuecomment-302865630 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

Commits
-------

df747ce [FrameworkBundle][Validator] Deprecate passing validator instances/aliases over using the service locator
2017-05-23 11:02:41 +02:00
Nicolas Grekas
cbd256135b minor #22845 [Form][3.3] avoid double blanks while rendering form attributes (craue)
This PR was merged into the 3.3 branch.

Discussion
----------

[Form][3.3] avoid double blanks while rendering form attributes

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | kind of
| New feature?  | no
| BC breaks?    | no (rather reverts one)
| Deprecations? | no
| Tests pass?   | we'll see
| Fixed tickets | --
| License       | MIT
| Doc PR        | --

This fix avoids the double blanks introduced by #20365 when using the Twig template. The `attributes` block already renders one blank before each attribute, so there's no need to add another one prior to calling the block.

Commits
-------

a9c11c9 avoid double blanks while rendering form attributes
2017-05-23 10:58:47 +02:00
Nicolas Grekas
2f4dea56b4 bug #22857 [DI] Fix autowire error for inlined services (weaverryan)
This PR was squashed before being merged into the 3.3 branch (closes #22857).

Discussion
----------

[DI] Fix autowire error for inlined services

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

The `AutowirePass` defers autowiring exceptions until later so that we don't throw autowiring exceptions for services that are ultimately removed. But, if a service is *inlined*, then it appears to be removed, and so we don't throw the exception. This fixes that.

It's an easy fix - but it's a bit ugly. We're adding a bit more "state" to the passes... simply because there is some information that needs to be shared through the compiler process. There might be a better way of doing this in the future (e.g. storing some metadata on the `Compiler`), but this *does* work well.

Commits
-------

4bcef3d [DI] Fix autowire error for inlined services
2017-05-23 10:56:47 +02:00
Ryan Weaver
4bcef3d67c [DI] Fix autowire error for inlined services 2017-05-23 10:56:44 +02:00
Nicolas Grekas
bca7b41afd bug #22858 [SecurityBundle] Prevent auto-registration of UserPasswordEncoderCommand (chalasr)
This PR was merged into the 3.3 branch.

Discussion
----------

[SecurityBundle] Prevent auto-registration of UserPasswordEncoderCommand

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

Always registers the command as a service even if no encoders are configured so that it is not auto-registered via reflection.
Prevents an irrelevant deprecation when no encoders are configured and, if a day the per-convention command registration is removed, ensures that the command always exists (leading to an exception saying that you have no configured encoder, better than nothing).
ping @ogizanagi

Commits
-------

b39b35b Prevent auto-registration of UserPasswordEncoderCommand
2017-05-23 10:54:54 +02:00
Nicolas Grekas
4d93e144a8 bug #22859 [Profiler][VarDumper] Fix searchbar css when in toolbar (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[Profiler][VarDumper] Fix searchbar css when in toolbar

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | N/A
| License       | MIT
| Doc PR        | N/A

Because css is hard (`.sf-toolbarreset *` has precedence since 4acec8973f moved the `toolbar.css.twig` inclusion from up to bottom):

|Before|After|
|--|--|
|<img width="291" alt="screenshot 2017-05-22 a 19 36 06" src="https://cloud.githubusercontent.com/assets/2211145/26321182/208780c0-3f26-11e7-89bb-7aa64f17c7b5.PNG">|<img width="280" alt="screenshot 2017-05-22 a 19 36 27" src="https://cloud.githubusercontent.com/assets/2211145/26321188/248ed0ce-3f26-11e7-852a-40968fba2e9f.PNG">|

Commits
-------

98b3002 [Profiler][VarDumper] Fix searchbar css when in toolbar
2017-05-23 09:35:31 +02:00
Nicolas Grekas
ec54341ee0 minor #22861 Close PHP code in phpt file (keradus)
This PR was merged into the 3.3 branch.

Discussion
----------

Close PHP code in phpt file

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

that's the only phpt file that is not closing php code section
this causes linting via `php -l` to fail

Commits
-------

36f6e05 Close PHP code in phpt file
2017-05-23 09:33:33 +02:00
Fabien Potencier
222325f088 minor #22843 use getProjectDir() when possible (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

use getProjectDir() when possible

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

Commits
-------

a8e298a66c use getProjectDir() when possible
2017-05-23 07:59:48 +02:00
Dariusz Rumiński
36f6e05a2e Close PHP code in phpt file 2017-05-22 22:45:58 +02:00
Maxime Steinhausser
98b3002caf [Profiler][VarDumper] Fix searchbar css when in toolbar 2017-05-22 19:32:12 +02:00
Robin Chalas
b39b35b95d Prevent auto-registration of UserPasswordEncoderCommand 2017-05-22 18:58:55 +02:00
Nicolas Grekas
82ec56b40c bug #22614 [Process] Fixed escaping arguments on Windows when inheritEnvironmentVariables is set to false (maryo)
This PR was merged into the 3.3 branch.

Discussion
----------

[Process]  Fixed escaping arguments on Windows when inheritEnvironmentVariables is set to false

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

I've added a FAILING testcase on Windows. It incorrectly substitutes an argument containing a quotation mark probably assuming it's an env var needed to backup when inheritEnvironmentVariables is set to false.

Commits
-------

26032ef [Process] Fixed incorrectly escaping arguments on Windows when inheritEnvironmentVariables is set to false
2017-05-22 14:37:50 +02:00
maryo
26032ef055 [Process] Fixed incorrectly escaping arguments on Windows when inheritEnvironmentVariables is set to false 2017-05-22 14:32:03 +02:00
Nicolas Grekas
49d6604ee4 Fix file perms 2017-05-22 13:36:46 +02:00
Kévin Dunglas
987749bb99
[Serializer] Remove a useless legacy annotation 2017-05-22 11:36:51 +02:00
Nicolas Grekas
e014b8a7a3 minor #22850 [VarDumper] CS Fix extra semi-colon (chalasr)
This PR was merged into the 3.3 branch.

Discussion
----------

[VarDumper] CS Fix extra semi-colon

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

Commits
-------

c252c08 Fixed extra semi-colon
2017-05-22 11:26:56 +02:00
Robin Chalas
c252c08d44 Fixed extra semi-colon 2017-05-22 11:10:57 +02:00
Nicolas Grekas
d33b6c5306 minor #22846 [FrameworkBundle][Translation] fix docblock position (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle][Translation] fix docblock position

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

The `$defaultLocale` argument is present in the `Translator` class of
the FrameworkBundle, but is not part of the Translation component.

Commits
-------

0829964 fix docblock position
2017-05-22 09:49:45 +02:00
Nicolas Grekas
40b17336fc minor #22825 [DI] Remove dead service_container checks (ro0NL)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Remove dead service_container checks

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| 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-->

Since #21627

Commits
-------

9a8ea93 [DI] Remove dead service_container checks
2017-05-22 09:45:40 +02:00
Christian Flothmann
082996417d fix docblock position
The `$defaultLocale` argument is present in the `Translator` class of
the FrameworkBundle, but is not part of the Translation component.
2017-05-22 09:42:36 +02:00
Christian Raue
a9c11c9b20 avoid double blanks while rendering form attributes 2017-05-22 09:32:45 +02:00
Christian Flothmann
a8e298a66c use getProjectDir() when possible 2017-05-22 09:09:23 +02:00
Hugo Hamon
1c2383f1a5 [DependencyInjection] remove unused variable 2017-05-21 23:03:33 +02:00
Fabien Potencier
4feb530fc9 minor #22834 [PhpUnitBridge] add changelog entries for #21140 (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[PhpUnitBridge] add changelog entries for #21140

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

Commits
-------

c83c5bc6b1 [PhpUnitBridge] add changelog entries for #21140
2017-05-21 20:34:13 +02:00
Christian Flothmann
e5455db84f [PhpUnitBridge] add a changelog file 2017-05-21 19:48:56 +02:00
Christian Flothmann
c83c5bc6b1 [PhpUnitBridge] add changelog entries for #21140 2017-05-21 19:39:57 +02:00
Brandon Kelly
50fdcd6c4f Fixed filename in help text for update-data.php 2017-05-21 19:28:42 +02:00
Maxime Steinhausser
df747ce43f [FrameworkBundle][Validator] Deprecate passing validator instances/aliases over using the service locator 2017-05-21 19:05:02 +02:00
Nicolas Grekas
b1349a7889 Merge branch '3.2' into 3.3
* 3.2:
  document deprecation of the StringUtil class
2017-05-21 15:55:13 +02:00
Christian Flothmann
57f6941e25 [Yaml] fix colon without space deprecation
A colon after a mapping key that is not followed by a space is valid if
the mapping key is quoted.
2017-05-21 14:39:29 +02:00
Roland Franssen
9a8ea93139 [DI] Remove dead service_container checks 2017-05-21 12:19:15 +02:00
Christian Flothmann
f00c47ac9c document deprecation of the StringUtil class 2017-05-21 12:07:34 +02:00
Robin Chalas
7b14d4f4ec Add missing doc param & deprecation changelog entries 2017-05-21 12:00:14 +02:00
Nicolas Grekas
cd217fd121 Merge branch '3.2' into 3.3
* 3.2:
  update phpunit-bridge cache-id
  respect optional error handler arguments
  [Intl] Fix bin/common.php PHP7 compatibility
2017-05-21 11:48:35 +02:00
Nicolas Grekas
39b0515abf Merge branch '2.8' into 3.2
* 2.8:
  update phpunit-bridge cache-id
  respect optional error handler arguments
  [Intl] Fix bin/common.php PHP7 compatibility
2017-05-21 11:47:49 +02:00
Nicolas Grekas
7a792eb896 Merge branch '2.7' into 2.8
* 2.7:
  update phpunit-bridge cache-id
  respect optional error handler arguments
  [Intl] Fix bin/common.php PHP7 compatibility
2017-05-21 11:46:38 +02:00
Christian Flothmann
f7d1a064c6 respect optional error handler arguments 2017-05-21 11:00:20 +02:00
Nicolas Grekas
023cf9e014 Merge branch '3.2' into 3.3
* 3.2:
  do not mock a deprecated interface
  [DI] Added missing deprecation in changelog
  [Ldap] add a changelog file
2017-05-21 10:56:50 +02:00
Nicolas Grekas
455b09bd3d minor #22802 [Ldap] add a changelog file (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Ldap] add a changelog file

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

Commits
-------

5bdda6c [Ldap] add a changelog file
2017-05-21 10:51:01 +02:00
Nicolas Grekas
a0364bc3eb minor #22757 [Security][Serializer][DI] Add new arguments typehints in preparation for 4.0 (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[Security][Serializer][DI] Add new arguments typehints in preparation for 4.0

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/22743#pullrequestreview-38950305
| License       | MIT
| Doc PR        | N/A

See https://github.com/symfony/symfony/pull/22743#pullrequestreview-38950305 discussion for the motivations.

Commits
-------

b973b30 [Security][Serializer][DI] Add new arguments typehints in preparation for 4.0
2017-05-21 10:47:05 +02:00
Nicolas Grekas
c268ebafc3 bug #22781 [DI][Serializer] Fix missing de(normalizer|coder) autoconfig (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI][Serializer] Fix missing de(normalizer|coder) autoconfig

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes(ish)
| New feature?  | no (at least complete the 3.3 feature)
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | N/A
| License       | MIT
| Doc PR        | N/A

Just migrating an app to `3.3.0-RC1`, I get surprised it wasn't already registered :)

Commits
-------

3c3a276 [DI][Serializer] Fix missing de(normalizer|coder) autoconfig
2017-05-21 10:45:16 +02:00
Nicolas Grekas
5c40e1264c bug #22790 [DependencyInjection] Fix dumping of RewindableGenerator with empty IteratorArgument (meyerbaptiste)
This PR was merged into the 3.3 branch.

Discussion
----------

[DependencyInjection] Fix dumping of RewindableGenerator with empty IteratorArgument

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

According with https://github.com/symfony/symfony/issues/22780#issuecomment-302747395, when an `IteratorArgument` is empty, the closure generated by the `PhpDumper` should be `function () { return new EmptyIterator();` instead of `function () {}`, which is an invalid traversable for the `RewindableGenerator`.

Commits
-------

c2db0c1 [DependencyInjection] Fix dumping of RewindableGenerator with empty IteratorArgument
2017-05-21 10:44:23 +02:00
Nicolas Grekas
8529e02879 minor #22810 [DI] Added missing deprecation in changelog (ro0NL)
This PR was merged into the 3.2 branch.

Discussion
----------

[DI] Added missing deprecation in changelog

| Q             | A
| ------------- | ---
| Branch?       | 3.2
| 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-->

See #20113

Commits
-------

b3d58c5 [DI] Added missing deprecation in changelog
2017-05-21 10:40:13 +02:00
Christian Flothmann
c36ea03e68 [PhpUnitBridge] remove unused use statement 2017-05-21 10:03:01 +02:00
Christian Flothmann
a920274709 do not mock a deprecated interface 2017-05-21 09:39:50 +02:00
Roland Franssen
b3d58c54a4 [DI] Added missing deprecation in changelog 2017-05-20 22:16:10 +02:00
Christian Flothmann
5bdda6ce74 [Ldap] add a changelog file 2017-05-20 15:43:53 +02:00
Maxime Steinhausser
b973b3072a [Security][Serializer][DI] Add new arguments typehints in preparation for 4.0 2017-05-20 12:13:18 +02:00
Nicolas Grekas
628ec8118e minor #22748 [Intl] Fix bin/common.php PHP7 compatibility (ondrejfuhrer)
This PR was squashed before being merged into the 2.7 branch (closes #22748).

Discussion
----------

[Intl] Fix bin/common.php PHP7 compatibility

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

Created for Symfony 2.7 version which is the oldest maintained impacted branch.

Commits
-------

c2ccf36 [Intl] Fix bin/common.php PHP7 compatibility
2017-05-20 11:41:39 +02:00
Ondřej Führer
c2ccf36040 [Intl] Fix bin/common.php PHP7 compatibility 2017-05-20 11:41:38 +02:00
Fabien Potencier
159f3c59d5 bug #22787 [MonologBridge] Fix the Monlog ServerLogHandler from Hanging on Windows (ChadSikorra)
This PR was squashed before being merged into the 3.3 branch (closes #22787).

Discussion
----------

[MonologBridge] Fix the Monlog ServerLogHandler from Hanging on Windows

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

This resolves the issue discussed in https://github.com/symfony/symfony/issues/22712. This works on both Windows and Linux. Specifically it removes the additional hanging that was caused on Windows when attempting to write/close a TCP socket that's not open on the other end in asynchronous mode.

Commits
-------

be60aa401f [MonologBridge] Fix the Monlog ServerLogHandler from Hanging on Windows
2017-05-20 09:30:50 +02:00
Chad Sikorra
be60aa401f [MonologBridge] Fix the Monlog ServerLogHandler from Hanging on Windows 2017-05-20 09:30:49 +02:00
meyerbaptiste
c2db0c14e1 [DependencyInjection] Fix dumping of RewindableGenerator with empty IteratorArgument 2017-05-19 23:56:58 +02:00
Fabien Potencier
649ad8cf55 bug #22768 Use 0.0.0.0 as the server log command host default. (ChadSikorra)
This PR was merged into the 3.3 branch.

Discussion
----------

Use 0.0.0.0 as the server log command host default.

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

This fixes the `server:log` command on Windows when run with default settings. The current setting `0` has no meaning on Windows, and `0.0.0.0` is the standard "listen on all addresses/interfaces", so should be the most compatible. It works on both Linux and Windows for me this way.

I mentioned this in another PR where the logger config has the same issue on Windows:

https://github.com/symfony/symfony-standard/pull/1077

Commits
-------

3fcc810dd7 Use 0.0.0.0 as the server log host default.
2017-05-19 21:45:04 +02:00
Maxime Steinhausser
3c3a276374 [DI][Serializer] Fix missing de(normalizer|coder) autoconfig 2017-05-19 18:52:57 +02:00
Nicolas Grekas
7938fdeceb Merge branch '3.2' into 3.3
* 3.2:
  typo
  CI fixes
  Improved how profiler errors are dispalyed on small screens
2017-05-19 14:13:17 +02:00
Nicolas Grekas
f154e67000 Merge branch '2.8' into 3.2
* 2.8:
  CI fixes
  Improved how profiler errors are dispalyed on small screens
2017-05-19 14:10:04 +02:00
Nicolas Grekas
f7b3252cc1 Merge branch '2.7' into 2.8
* 2.7:
  CI fixes
2017-05-19 13:49:58 +02:00
Maxime Steinhausser
fab0629206 [Intl] Fix intl tests for PHP < 5.5.10 2017-05-19 08:06:36 +02:00
Chad Sikorra
3fcc810dd7 Use 0.0.0.0 as the server log host default. 2017-05-18 21:05:32 -05:00
Nicolas Grekas
a34b8ce2df CI fixes 2017-05-18 17:56:45 +02:00
Robin Chalas
3230fc7e70 Fix kernel.project_dir extensibility 2017-05-18 16:23:46 +02:00
Javier Eguiluz
3d6d80d843 Improved how profiler errors are dispalyed on small screens 2017-05-18 11:06:54 +02:00
David Maicher
16da6861be [Security] fix switch user _exit without having current token 2017-05-17 20:41:55 +02:00
Fabien Potencier
98021ae918 bumped Symfony version to 3.3.0 2017-05-17 20:35:24 +02:00
Fabien Potencier
297a65dbe8 updated VERSION for 3.3.0-RC1 2017-05-17 20:09:50 +02:00
Fabien Potencier
1bbc35a34a Merge branch '3.2'
* 3.2:
  removed unneeded annotation in tests
  [Intl][Form] Update tests, TimeZoneTransformer, and DateTimeToLocalizedStringTransformer for the GMT and UTC split in ICU
  remove Security deps from the require section
  [Intl] Update ICU data to 59.1
2017-05-15 08:17:59 -07:00
Fabien Potencier
94871fac80 removed unneeded annotation in tests 2017-05-15 08:15:28 -07:00
Fabien Potencier
9fd95ca9ef Merge branch '2.8' into 3.2
* 2.8:
  [Intl][Form] Update tests, TimeZoneTransformer, and DateTimeToLocalizedStringTransformer for the GMT and UTC split in ICU
  [Intl] Update ICU data to 59.1
2017-05-15 08:08:20 -07:00
Fabien Potencier
b8c95976c3 Merge branch '2.7' into 2.8
* 2.7:
  [Intl][Form] Update tests, TimeZoneTransformer, and DateTimeToLocalizedStringTransformer for the GMT and UTC split in ICU
  [Intl] Update ICU data to 59.1
2017-05-15 08:02:37 -07:00
Fabien Potencier
c4abc1566d minor #22627 [Intl] Update ICU data to 59.1 (jakzal)
This PR was squashed before being merged into the 2.7 branch (closes #22627).

Discussion
----------

[Intl] Update ICU data to 59.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        | -

The [GMT timezone has been split from the UTC](http://site.icu-project.org/download/59) timezone [in CLDR](http://cldr.unicode.org/index/downloads/cldr-31) (which ICU is based on).

For example, the code blow:
* before ICU 59.1 would return "GMT" in all cases
* with ICU 59.1 it returns "UTC" for the first three ('z', 'zz', 'zzz')
  and "Coordinated Universal Time" for the last two ('zzzz', 'zzzzz').

```php
foreach (['z', 'zz', 'zzz', 'zzzz', 'zzzzz'] as $pattern) {
    $formatter = new \IntlDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('UTC'), IntlDateFormatter::GREGORIAN, $pattern);
    var_dump($formatter->format(new \DateTime('@0')));
}
```

Similarly Form's `DateTimeToLocalizedStringTransformer` is also affected:

```php
$transformer = new DateTimeToLocalizedStringTransformer('UTC', 'UTC', null, \IntlDateFormatter::FULL);
var_dump($transformer->transform(new \DateTime('2010-02-03 04:05:06 UTC')));
// ICU 58.2: '03.02.2010, 04:05:06 GMT'
// ICU 59.1: '03.02.2010, 04:05:06 Koordinierte Weltzeit'
```

Refer to added and modified test cases for more changes. I split this PR in two commits for easier review. First commit updates ICU data (generated files), the second updates code and test cases to be compatible with updated data.

Commits
-------

5d3d1b25e0 [Intl][Form] Update tests, TimeZoneTransformer, and DateTimeToLocalizedStringTransformer for the GMT and UTC split in ICU
00acb37205 [Intl] Update ICU data to 59.1
2017-05-15 07:59:44 -07:00
Jakub Zalas
5d3d1b25e0
[Intl][Form] Update tests, TimeZoneTransformer, and DateTimeToLocalizedStringTransformer for the GMT and UTC split in ICU
The [GMT timezone has been split from the UTC](http://site.icu-project.org/download/59) timezone [in CLDR](http://cldr.unicode.org/index/downloads/cldr-31) (which ICU is based on).

For example, the code blow:
* before ICU 59.1 would return "GMT" in all cases
* with ICU 59.1 it returns "UTC" for the first three ('z', 'zz', 'zzz')
  and "Coordinated Universal Time" for the last two ('zzzz', 'zzzzz').

```php
foreach (['z', 'zz', 'zzz', 'zzzz', 'zzzzz'] as $pattern) {
    $formatter = new \IntlDateFormatter('en', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT, new \DateTimeZone('UTC'), IntlDateFormatter::GREGORIAN, $pattern);
    var_dump($formatter->format(new \DateTime('@0')));
}
```

Similarly Form's `DateTimeToLocalizedStringTransformer` is also affected:

```php
$transformer = new DateTimeToLocalizedStringTransformer('UTC', 'UTC', null, \IntlDateFormatter::FULL);
var_dump($transformer->transform(new \DateTime('2010-02-03 04:05:06 UTC')));
// ICU 58.2: '03.02.2010, 04:05:06 GMT'
// ICU 59.1: '03.02.2010, 04:05:06 Koordinierte Weltzeit'
```

Refer to added and modified test cases for more changes. I split this PR in two commits for easier review. First commit updates ICU data (generated files), the second updates code and test cases to be compatible with updated data.
2017-05-15 15:46:23 +01:00
Fabien Potencier
401c55004b bug #22715 [FrameworkBundle] remove Security deps from the require section (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[FrameworkBundle] remove Security deps from the require section

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

These requirements have been moved in #20075 before and are still
present in the `require-dev` section.

see symfony/flex#14

Commits
-------

c690256966 remove Security deps from the require section
2017-05-15 07:30:51 -07:00
Christian Flothmann
c690256966 remove Security deps from the require section
These requirements have been moved in #20075 before and are still
present in the `require-dev` section.
2017-05-15 15:20:33 +02:00
Nicolas Grekas
af4ec231b0 Merge branch '3.2'
* 3.2:
  Fix errors not rethrown even if not handled by console.error listeners
  [VarDumper] Fix dumping of non-nested stubs
  [Security] Avoid unnecessary route lookup for empty logout path
  respect inline level when dumping objects as maps
  Test case for not in-lined map-objects
2017-05-15 14:04:53 +02:00
Nicolas Grekas
5857e7c4e1 Merge branch '2.8' into 3.2
* 2.8:
  Fix errors not rethrown even if not handled by console.error listeners
  [VarDumper] Fix dumping of non-nested stubs
  [Security] Avoid unnecessary route lookup for empty logout path
2017-05-15 14:02:31 +02:00
Nicolas Grekas
6ef78ec553 Merge branch '2.7' into 2.8
* 2.7:
  Fix errors not rethrown even if not handled by console.error listeners
  [VarDumper] Fix dumping of non-nested stubs
  [Security] Avoid unnecessary route lookup for empty logout path
2017-05-15 13:59:37 +02:00
Nicolas Grekas
03914e9e9b bug #22613 [Process] Fix incorrectly calling PHP process when path contains space (maryo)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Process] Fix incorrectly calling PHP process when path contains space

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

I have PHP installed at "D:\Program Files\PHP" which contains a space. `PhpExecutableFinder` found it but then `PhpProcess` splitted the path by space. This PR fixes it. I wanted to write a test but I don't know ho to do it properly since it is dependent on the location where PHP is installed and I can't even mock `PhpExecutableFinder` because it is hardcoded dependency and an implementation detail.

Commits
-------

9c08109 Fix incorrectly calling PHP process on Windows when path contains space
2017-05-15 10:12:59 +02:00
Fabien Potencier
fb532bfc17 feature #22680 [DI] Fixing missing "exclude" functionality from PSR4 loader (weaverryan)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Fixing missing "exclude" functionality from PSR4 loader

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

When the PSR4 loader was added in #21289, @nicolas-grekas said this:

> given that glob() is powerful enough to include/exclude dirs, I removed the Test special exclusion (source: https://github.com/symfony/symfony/pull/21289#issuecomment-272821106)

But, I don't believe that's true! [Glob is all about inclusion, not exclusion](https://en.wikipedia.org/wiki/Glob_(programming)#Syntax) - the maximum you can exclude is a single character. Thus, I've marked this as a bug.

My motivation came from upgrading KnpU to the new 3.3 DI stuff. We have many directories (40) in `src/`, and listing them all one-by-one in `resource:` is crazy - the `resource` line would be ~350 characters long and quite unreadable. What I really want to do is include *everything* and then exclude few directories. I tried to do this with `glob`, but it's not possible.

This PR allows for something like this:

```yml
services:
    _defaults:
        public: false

    # ...
    AppBundle\:
        resource: '../../src/AppBundle/*'
        exclude: '../../src/AppBundle/{AppBundle.php,Entity}'
```

This works *beautifully* in practice. And even if I forget to exclude a directory - since the services are private -  **they're ultimately removed from the container anyways**. In fact, the *only* reason I need to exclude *anything* is because of the new "service argument resolver", which causes entities to not be properly removed from the compiled container.

Thanks!

Commits
-------

7d07f19459 Allowing prototype/PSR4 service loading ability to exclude, because glob doesn't support this
2017-05-14 09:23:24 -07:00
Ryan Weaver
7d07f19459 Allowing prototype/PSR4 service loading ability to exclude, because glob doesn't support this 2017-05-13 13:10:49 -04:00
Fabien Potencier
76190ab8c2 minor #22709 [Security] Remove polyfill-util dependancy from security-core (BPScott)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Security] Remove polyfill-util dependancy from security-core

| 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

Security-core no longer directly depends upon polyfill-util since #16382.

This does not change the existing dependancy tree as polyfill-util is
transitivly depended on via polyfill-php56.

Commits
-------

fb140aa939 Remove polyfill-util dependancy from security-core
2017-05-13 07:15:20 -07:00
Fabien Potencier
d975419a6c bug #22699 [TwigBundle] service workflow.twig_extension should stay public (ogizanagi)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[TwigBundle] service workflow.twig_extension should stay public

| Q             | A
| ------------- | ---
| Branch?       | master (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

While it's not really required for this service to be public AFAIK, it was not made private when introducing it in 3.2. Which means it should stay public in upper branches. But [since we now default to `public: false`](https://github.com/symfony/symfony/pull/22615) in every service config file, it's currently private in 3.3.

I had a quick look on commits merged after this PR and didn't find any other similar case.

Commits
-------

5d07c6aa76 [TwigBundle] service workflow.twig_extension should stay public
2017-05-13 07:11:43 -07:00
Ben Scott
fb140aa939 Remove polyfill-util dependancy from security-core
Security-core no longer directly depends upon polyfill-util since #16382.

This does not change the existing dependancy tree as polyfill-util is
transitivly depended on via polyfill-php56.
2017-05-13 13:09:51 +01:00
Ryan Weaver
fe40cb21d4 Adding autowire alias for AuthenticationUtils 2017-05-12 11:05:58 -07:00
Maxime Steinhausser
5d07c6aa76 [TwigBundle] service workflow.twig_extension should stay public 2017-05-12 19:24:04 +02:00
Christian Flothmann
84bb34fa05 [WebServerBundle] fix dependencies 2017-05-12 12:42:32 +02:00
Maxime Steinhausser
85f6710424 [TwigBundle] Remove ClassExistenceResource usage 2017-05-11 20:00:39 +02:00
Fabien Potencier
1c2c3fc677 bug #22647 [VarDumper] Fix dumping of non-nested stubs (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[VarDumper] Fix dumping of non-nested stubs

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

dd5b7a632b [VarDumper] Fix dumping of non-nested stubs
2017-05-11 10:53:06 -07:00
Fabien Potencier
8f4eb92b64 bug #22409 [Yaml] respect inline level when dumping objects as maps (goetas, xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Yaml] respect inline level when dumping objects as maps

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

Commits
-------

3cca48c715 respect inline level when dumping objects as maps
4f5c149798 Test case for not in-lined map-objects
2017-05-11 10:37:16 -07:00
Fabien Potencier
1ccc3de17b removed duplicate use statement 2017-05-11 10:33:45 -07:00
Fabien Potencier
2a288dba78 bug #22584 [Security] Avoid unnecessary route lookup for empty logout path (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Security] Avoid unnecessary route lookup for empty logout path

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

i first included this with #22572 where having `logout: { path: ~ }` makes more sense for disabling logout path matching/generation. But currently it's already allowed and causes an unneeded route lookup and url generation.

Commits
-------

2967807b14 [Security] Avoid unnecessary route lookup for empty logout path
2017-05-11 10:27:33 -07:00
Fabien Potencier
1503f3de40 bug #22642 [DX] Making the RegisterControllerArgumentLocatorsPass throw exception on bad types (weaverryan)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DX] Making the RegisterControllerArgumentLocatorsPass throw exception on bad types

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

Suppose you type-hint a controller arg with a non-existent class:

```php
public function fooAction(FakeClass $foo)
```

Current error:

> Class AppBundle\Controller\FakeClass does not exist

(from `ParamConverterListener`, and only when you hit that route)

New error:

> Cannot determine controller argument for "AppBundle\Controller\BlogController::indexAction()
  ": the $foo argument is type-hinted with the non-existent class or interface: "AppBundle\Con
  troller\FakeClass". Did you forget to add a use statement?

(at build time)

The extra `Did you forget to add a use statement?` only shows up if it appears you likely forgot a `use` statement.

I think this will be a really common error (especially forgetting the `use` statement)... so let's make it a *really* nice error! An alternative would be to enhance the args resolver to throw a clearer exception when no arg can be wired and the type-hint is bad (we would also need to make the `ParamConverterListener` stop throwing the current error... so that the args resolver would have the opportunity to do that. Disadvantage would be that this error would only happen when you hit the route, not at build time.

Cheers!

Commits
-------

22b905226d Making the RegisterControllerArgumentLocatorsPass throw an exception on a bad type-hint
2017-05-11 10:20:43 -07:00
Fabien Potencier
83114ade04 bug #22664 [Security] Fix TraceableAccessDecisionManager / DebugAccessDecisionManager BC layer (ogizanagi)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[Security] Fix TraceableAccessDecisionManager / DebugAccessDecisionManager BC layer

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/22657#issuecomment-299728726
| License       | MIT
| Doc PR        | N/A

Same as #22657 for the renaming of `DebugAccessDecisionManager` into `TraceableAccessDecisionManager`. Indeed, I think we also require to redeclare the old `DebugAccessDecisionManager` for composer `classmap-authoritative` autoloading strategy & classmap dumper.

AppVeyor failures unrelated.

Edit: Re-thinking about it, it's probably not very common to dump the classmap and use the `classmap-authoritative` strategy when using those classes... That's to say: in debug mode/dev env. So it may be the reason why the class wasn't redeclared on contrary of `DefinitionDecorator`.

Commits
-------

5b123b9674 [Security] Fix TraceableAccessDecisionManager / DebugAccessDecisionManager BC layer
2017-05-11 10:16:35 -07:00
Fabien Potencier
05240ce60d bug #22690 [Console] Fix errors not rethrown even if not handled by console.error listeners (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fix errors not rethrown even if not handled by console.error listeners

| 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/22678
| License       | MIT
| Doc PR        | n/a

https://github.com/symfony/symfony/pull/22261 has been squashed while revisiting error handling, this fixes it again while keeping latest changes intact.

__code__
```php
public function execute(InputInterface $input, OutputInterface $output) {
    $this->barr();
}

public function bar() { }
```

__before__
![before](http://image.prntscr.com/image/38aa3b46fed6439ead693908ab104fb3.png)

__after__
![after](http://image.prntscr.com/image/071322bfa52247c6a02eac6ef9d8284a.png)

Commits
-------

75f098fcb8 Fix errors not rethrown even if not handled by console.error listeners
2017-05-11 10:13:33 -07:00
Fabien Potencier
b33f1dfe07 bug #22681 Fixing a bug where abstract classes were wired with the prototype loader (weaverryan)
This PR was merged into the 3.3-dev branch.

Discussion
----------

Fixing a bug where abstract classes were wired with the prototype loader

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

The prototype/PSR-4 loader currently tries to wire abstract classes. The problem is if, for example, you have, for example:

```php
abstract class BaseCommand extends Command
{
}
```

If this is registered as a service, and you have `autoconfigure`, then the console `Application` will try to use this a command.

Was there some reason abstract classes were originally allowed to be registered as services with the PSR4/prototype loader? I don't know if there is a real use-case for registering abstract classes. If you wanted to use that service as a parent service... then you'll probably be configuring it yourself anyways. We could also fix this by changing all tags compiler passes to skip classes that are abstract... *if* there is a use-case for Abstract classes being auto-registered.

Cheers!

Commits
-------

5326bab10a Fixing a bug where abstract classes were wired
2017-05-11 10:11:08 -07:00
Fabien Potencier
a3f78608e8 feature #22665 [DI] Do not throw autowiring exceptions for a service that will be removed (weaverryan)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Do not throw autowiring exceptions for a service that will be removed

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

Hi guys!

tl;dr Do no throw a "Cannot autowire service id foo_bar" if that service (`foo_bar`) is private and is ultimately removed from the container.

I ran into a problem with the new PSR-4 service loader: our existing projects often contains directories with a mixture of services and model classes. In reality, that's not a problem: since the services are private, if any "extra" classes are registered as service, they're removed from the container because they're not referenced. In other words, the system is great: model classes do *not* become services naturally... because nobody tries to inject them as services.

However, if your model classes have constructor args... then things blow up on compilation. This fixes that: it delays autowiring errors until after `RemoveUnusedDefinitionsPass` runs and then does *not* throw those exceptions if the service is gone.

Cheers!

Commits
-------

f4913feaa8 Fixing a bug where services that were eventually removed could cause autowire errors
2017-05-11 10:07:41 -07:00
Fabien Potencier
428b9bfa4f Merge branch '3.2'
* 3.2:
  [Console] Do not duplicate Helper::strlen() code
  [FrameworkBundle] Adding the extension XML
  [Form] Minor: Fix comment in ChoiceType
  [FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice
  fixed CS
  fixed CS
  [DI] Fix PhpDumper blank lines around namespace
  fixed CS
  [Workflow] fix use directives
  [Workflow] Move twig extension registration to twig bundle
  Filesystem: annotate the one network test with a "network" group.
  [DependencyInjection] Don't store default deprecation template in every service definition instance
2017-05-11 09:47:52 -07:00
Fabien Potencier
329e96c583 Merge branch '2.8' into 3.2
* 2.8:
  [Console] Do not duplicate Helper::strlen() code
  [FrameworkBundle] Adding the extension XML
  [Form] Minor: Fix comment in ChoiceType
  [FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice
2017-05-11 09:41:44 -07:00
Fabien Potencier
433dfd42a1 Merge branch '2.7' into 2.8
* 2.7:
  [Console] Do not duplicate Helper::strlen() code
  [FrameworkBundle] Adding the extension XML
  [Form] Minor: Fix comment in ChoiceType
  [FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice
2017-05-11 09:41:12 -07:00
Fabien Potencier
0ad2f2ef9f bug #22669 [FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice

| 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/recipes/issues/46
| License       | MIT
| Doc PR        | N/A

As spotted in https://github.com/symfony/recipes/issues/46, there is no reason to call `registerBundles` on the kernel instance, as it's already booted. So we just have to use `getBundles` instead and `registerBundles` can be implemented in a non-rewindable way, as done with flex.

Commits
-------

040edfec4a [FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice
2017-05-11 09:38:53 -07:00
Robin Chalas
75f098fcb8 Fix errors not rethrown even if not handled by console.error listeners 2017-05-11 16:06:19 +02:00
Ryan Weaver
5326bab10a Fixing a bug where abstract classes were wired 2017-05-11 05:42:51 -04:00
Ryan Weaver
22b905226d Making the RegisterControllerArgumentLocatorsPass throw an exception on a bad type-hint 2017-05-10 15:41:43 -04:00
Fabien Potencier
2f1c28bbbc minor #22683 [Console] Do not duplicate Helper::strlen() code (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Do not duplicate Helper::strlen() code

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

Commits
-------

01c2c099a4 [Console] Do not duplicate Helper::strlen() code
2017-05-10 11:24:43 -07:00
Ryan Weaver
f4913feaa8 Fixing a bug where services that were eventually removed could cause autowire errors 2017-05-10 09:32:00 -04:00
Maxime Steinhausser
01c2c099a4 [Console] Do not duplicate Helper::strlen() code 2017-05-09 20:54:25 +02:00
Fabien Potencier
2d72b0b8ce minor #22673 [Form] Minor: Fix comment in ChoiceType (issei-m)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Minor: Fix comment in ChoiceType

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | n/a
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Forgotten to be updated in: #21957

Commits
-------

a49d79c856 [Form] Minor: Fix comment in ChoiceType
2017-05-09 07:57:36 -07:00
Flug
6fe2ad0558 [FrameworkBundle] Adding the extension XML
required by XmlUtils and not installed by default
2017-05-09 07:43:21 -07:00
Fabien Potencier
ae9bda1ffc bug #22611 [FrameworkBundle] Fix "Locale class not found" in AboutCommand (rubenrua)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[FrameworkBundle] Fix "Locale class not found" in AboutCommand

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

Found testing http://fabien.potencier.org/symfony4-demo.html with docker `php:7.1`

Commits
-------

0269f9d422 [FrameworkBundle] Fix "Locale class not found" in AboutCommand
2017-05-09 07:36:16 -07:00
Ryan Weaver
7cc7c85919 Fixing bug where indexed args were set wrong in pass in some situations 2017-05-09 05:53:08 -04:00
Issei.M
a49d79c856 [Form] Minor: Fix comment in ChoiceType 2017-05-09 13:05:50 +09:00
Fabien Potencier
f389fa3a56 bug #22652 [Workflow] Move twig extension registration to twig bundle (ogizanagi)
This PR was merged into the 3.2 branch.

Discussion
----------

[Workflow] Move twig extension registration to twig bundle

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

It's probably very late, but I think the twig extension registration is supposed to be done from the `TwigBundle` rather than the `FrameworkBundle`. Fortunately, it doesn't cause any issue currently when using the framework bundle and the workflow component without twig, because it only creates a `workflow.twig_extension` service you'll probably never call, and the `twig.extension` tag is never processed. But still, creates a useless service that cannot be called (and is not removed because it's public).

So this PR aims for consistency over other twig extensions registration, and removing this service when not using twig.
It isn't a BC break to me, as you usually already use the `TwigBundle` for other extensions.

Commits
-------

3fc80d10ef [Workflow] Move twig extension registration to twig bundle
2017-05-08 09:35:15 -07:00
Fabien Potencier
3646d08735 feature #22668 [FrameworkBundle] KernelTestCase: allow to provide the kernel class with a var (ogizanagi)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[FrameworkBundle] KernelTestCase: allow to provide the kernel class with a var

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | yes, but must-have for the new project structure when using flex
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #22661
| License       | MIT
| Doc PR        | todo in https://symfony.com/doc/current/testing.html#your-first-functional-test

So, when using flex, the new `phpunit.xml.dist` will be:

```diff
<?xml version="1.0" encoding="UTF-8"?>

<!-- https://phpunit.de/manual/current/en/appendixes.configuration.html -->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.1/phpunit.xsd"
         backupGlobals="false"
         colors="true"
         bootstrap="vendor/autoload.php"
>
    <php>
        <ini name="error_reporting" value="-1" />
-        <server name="KERNEL_DIR" value="etc/" />
+        <server name="KERNEL_CLASS" value="App\Kernel" />
    </php>

    <testsuites>
        <testsuite name="Project Test Suite">
            <directory>tests/</directory>
        </testsuite>
    </testsuites>
</phpunit>
```

As it may cause issues when refactoring, I added a `class_exists` check with an appropriate exception to indicate the class is either not found or not autoloadable.

Commits
-------

4f68912552 [FrameworkBundle] KernelTestCase: allow to provide the kernel class with a var
2017-05-08 06:59:10 -07:00
Maxime Steinhausser
040edfec4a [FrameworkBundle] AbstractConfigCommand: do not try registering bundles twice 2017-05-08 10:50:08 +02:00
Maxime Steinhausser
4f68912552 [FrameworkBundle] KernelTestCase: allow to provide the kernel class with a var 2017-05-08 10:36:21 +02:00
Fabien Potencier
ec92b68bad minor #22653 [Workflow] fix use directives (ogizanagi)
This PR was merged into the 3.2 branch.

Discussion
----------

[Workflow] fix use directives

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

Spotted while creating https://github.com/symfony/symfony/pull/22652

Commits
-------

08f4ad2275 [Workflow] fix use directives
2017-05-07 20:43:20 -07:00
Fabien Potencier
33d6f5c327 fixed CS 2017-05-07 19:28:57 -07:00
Fabien Potencier
b81a6629ee Merge branch '2.8' into 3.2
* 2.8:
  fixed CS
  [DI] Fix PhpDumper blank lines around namespace
  fixed CS
  Filesystem: annotate the one network test with a "network" group.
  [DependencyInjection] Don't store default deprecation template in every service definition instance
2017-05-07 18:51:21 -07:00
Fabien Potencier
a23330bf1e fixed CS 2017-05-07 18:19:21 -07:00
Fabien Potencier
ae3d88c215 Merge branch '2.7' into 2.8
* 2.7:
  [DI] Fix PhpDumper blank lines around namespace
2017-05-07 18:18:23 -07:00
Maxime Steinhausser
5b123b9674 [Security] Fix TraceableAccessDecisionManager / DebugAccessDecisionManager BC layer 2017-05-07 21:52:37 +02:00