Commit Graph

31466 Commits

Author SHA1 Message Date
Thierry Thuon
74c951fa04 [FrameworkBundle][Translation] Move translation compiler pass 2017-06-21 13:24:12 +02:00
Fabien Potencier
30e817ae07 feature #22554 [Profiler][Validator] Add a validator panel in profiler (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[Profiler][Validator] Add a validator panel in profiler

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

I'm exploring the possibility of having a validator panel in the profiler.
The integration in the form panel is great, but there are a lot of other use-cases where you're likely to call the validator. The idea of this panel is to reference every calls made to the validator (`ValidatorInterface::validate()` at least) along with detailed informations.
Dealing with apis and a mobile app, it's not always easy to get the response body within the app to get what's wrong with the call. So now with this panel, I'm able to get the details without the api response.

In action with Symfony demo (on the admin new post form):

![symfony-demo](https://cloud.githubusercontent.com/assets/2211145/25490828/579a2c96-2b6e-11e7-9574-fb0975a5db83.gif)

![capture d ecran 2017-04-27 a 17 14 24](https://cloud.githubusercontent.com/assets/2211145/25490866/77d76988-2b6e-11e7-83c7-a10613442a5e.png)

On another app, by calling the validator elsewhere:

|No violations|With violations|
|--|--|
|![capture d ecran 2017-04-27 a 17 16 41](https://cloud.githubusercontent.com/assets/2211145/25490861/741886f6-2b6e-11e7-9e18-5948312d0096.png)|![capture d ecran 2017-04-27 a 17 17 32](https://cloud.githubusercontent.com/assets/2211145/25490860/74128daa-2b6e-11e7-979f-0d39741cc172.png)|

What do you think ?

---

Note: the SVG icon used should be changed. If anyone is willing to contribute and provide one, I'll be glad to add it!

Commits
-------

ac5e884f36 [Profiler][Validator] Add a validator panel in profiler
2017-06-19 11:56:06 -07:00
Maxime Steinhausser
ac5e884f36 [Profiler][Validator] Add a validator panel in profiler 2017-06-19 17:21:01 +02:00
Fabien Potencier
b223241f64 minor #23217 [Serializer] Fix workaround min php version (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[Serializer] Fix workaround min php version

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- 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 | https://github.com/symfony/symfony/pull/22444#issuecomment-309220368 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

Commits
-------

74db2e61bc [Serializer] Fix workaround min php version
2017-06-18 08:43:21 -07:00
Fabien Potencier
db8b29bd63 minor #23220 Remove duplicate changelog entries (jdreesen)
This PR was merged into the 3.4 branch.

Discussion
----------

Remove duplicate changelog entries

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- 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  <!--highly recommended for new features-->

Commits
-------

93e6e95dae Remove duplicate changelog entries
2017-06-18 08:42:36 -07:00
Jacob Dreesen
93e6e95dae Remove duplicate changelog entries 2017-06-18 13:44:42 +02:00
Maxime Steinhausser
74db2e61bc [Serializer] Fix workaround min php version 2017-06-17 20:11:33 +02:00
Fabien Potencier
0478ecd472 feature #22124 Shift responsibility for keeping Date header to ResponseHeaderBag (mpdude)
This PR was squashed before being merged into the 3.4 branch (closes #22124).

Discussion
----------

Shift responsibility for keeping Date header to ResponseHeaderBag

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

This is an improvement over #22036. It shifts responsibility for preserving a `Date` header to the `ResponseHeaderBag`.

We already have similar logic there for the `Cache-Control` header.

Commits
-------

5d838360f3 Shift responsibility for keeping Date header to ResponseHeaderBag
2017-06-16 14:36:06 -07:00
Matthias Pigulla
5d838360f3 Shift responsibility for keeping Date header to ResponseHeaderBag 2017-06-16 14:35:59 -07:00
Fabien Potencier
1cdbb7db7a feature #23122 Xml encoder optional type cast (ragboyjr)
This PR was submitted for the 2.7 branch but it was merged into the 3.4 branch instead (closes #23122).

Discussion
----------

Xml encoder optional type cast

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

This fixes the issue where certain XML attributes are typecasted when you don't want them to by providing the ability opt out of any typecasting of xml attributes via an option in the context. If this is approved, then I'll add docs in the serializer component describing the new context option.

Commits
-------

8f6e67d319 XML Encoder Optional Type Cast
2017-06-16 11:28:03 -07:00
RJ Garcia
8f6e67d319 XML Encoder Optional Type Cast
- This provides the ability to forgo the attribute type casting
- Updated the CHANGELOG

Signed-off-by: RJ Garcia <rj@bighead.net>
2017-06-16 11:28:02 -07:00
Fabien Potencier
6727a2610b feature #23207 [FrameworkBundle] Allow .yaml file extension everywhere (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Allow .yaml file extension everywhere

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- see comment below -->
| Bug fix?      | no
| New feature?  | yes <!-- 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 | #23205 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

Commits
-------

2940bb0d2c [FrameworkBundle] Allow .yaml file extension everywhere
2017-06-16 11:20:43 -07:00
Maxime Steinhausser
2940bb0d2c [FrameworkBundle] Allow .yaml file extension everywhere 2017-06-16 12:53:40 +02:00
Fabien Potencier
1f6330a9b9 feature #23076 [Validator] Adds support to check specific DNS record type for URL (iisisrael)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] Adds support to check specific DNS record type for URL

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

URL validation with the `checkDNS` option can time out for some international registrars or for reasons unknown.  When the `URL` constraint is implemented, the context may logically allow for a single DNS record type to be checked, which is less prone to timing out.  This updates the `checkDNS` option value to be one of any valid for the underlying `checkdnsrr()` method with backwards compatibility for the original boolean value.

Commits
-------

e66d8f1bef [Validator] Adds support to check specific DNS record type for URL
2017-06-15 07:35:35 -07:00
Fabien Potencier
bc4dd8f16b feature #22629 [Security] Trigger a deprecation when a voter is missing the VoterInterface (iltar)
This PR was squashed before being merged into the 3.4 branch (closes #22629).

Discussion
----------

[Security] Trigger a deprecation when a voter is missing the VoterInterface

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

Right now it's possible to add voters to the access decision manager that do not have a `VoterInterface`.
 - No Interface, no `vote()` method, and it will give a PHP error.
 - No Interface, but `vote()` method, it will still work.
 - If I don't implement the interface _and_ have no `vote()` method, I will get weird exception that's not meaningful: `Attempted to call an undefined method named "vote" of class "App\Voter\MyVoter".`

This PR will deprecate the ability to use voters without the interface, it will also throw a proper exception when missing the interface _and_ the `vote()` method. Why when using and not when setting? Due to the fact that the voters can be set lazily via the `IteratorArgument`. The SecurityBundle will trigger a deprecation if the interface is not implemented and an exception if there's not even a `vote()` method present (to prevent exceptions at run-time).

This should have full backwards compatibility with 3.3, but give more meaningful errors. The only behavioral difference, might be that the container will throw an exception instead of maybe succeeding in voting when 1 voter would be broken at the end of the list (based on strategy). This case however, will be detected during development and deployment, rather than run-time.

Commits
-------

9c253e1ff6 [Security] Trigger a deprecation when a voter is missing the VoterInterface
2017-06-15 07:23:21 -07:00
Iltar van der Berg
9c253e1ff6 [Security] Trigger a deprecation when a voter is missing the VoterInterface 2017-06-15 07:21:44 -07:00
Israel J. Carberry
e66d8f1bef [Validator] Adds support to check specific DNS record type for URL 2017-06-15 00:40:00 -05:00
Fabien Potencier
e992eae067 feature #22909 [Yaml] Deprecate using the non-specific tag (GuilhemN)
This PR was merged into the 3.4 branch.

Discussion
----------

[Yaml] Deprecate using the non-specific tag

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

Values tagged with the non-specific tag must not be transformed in an integer, this tag means that they must not be evaluated (see [the spec](http://www.yaml.org/spec/1.2/spec.html#tag/non-specific/)).

I applied this change in https://github.com/symfony/symfony/pull/22762 to comply with the spec.

Commits
-------

60f5046661 [Yaml] Deprecate using the non-specific tag
2017-06-14 13:38:21 -07:00
Fabien Potencier
bf094efa9c feature #23042 Consistent error handling in remember me services (lstrojny)
This PR was merged into the 3.4 branch.

Discussion
----------

Consistent error handling in remember me services

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

RememberMeServices lacked consistent error handling so far making it impossible for implementors to e.g. maintain sufficiently detailed audit logs for remember me errors. Since remember me is a very sensitive area in any application, detailed logging is crucial.

The change proposed allows `loginFail` to optionally take the exception object as a second parameter and uses said exception consistently internally by calling `loginFail` instead of `cancelCookie`.

Commits
-------

eda1888f71 Consistent error handling in remember me services
2017-06-14 13:00:10 -07:00
Fabien Potencier
1ed41b549d feature #22444 [Serializer] DateTimeNormalizer: allow to provide timezone (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[Serializer] DateTimeNormalizer: allow to provide timezone

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

My own use-case was for denormalization of a csv file provided by a third-party. The datetime format inside does not contain any timezone information, and won't change, but it's established to be UTC (or at least consistent).

So by providing the new `datetime_timezone` option, the returned instance of `\DateTime(Interface)` will properly be set with the expected timezone. (In case the format already supports the time offset, the provided timezone is ignored in favor of the one parsed by the `\DateTime` object)

Regarding normalization, the expected behavior of this feature is to consistently return the same time offset.

Commits
-------

c10a780afb [Serializer] DateTimeNormalizer: allow to provide timezone
2017-06-14 12:25:49 -07:00
Fabien Potencier
a03e19424b feature #23143 [DI] Reference instead of inline for array-params (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Reference instead of inline for array-params

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

- [x] Tests to be written.

This PR is part of my "container on a diet" quest.

When big array parameters are resolved, they create data duplication in the dumped container. This is even worse when the same big array parameters are used several times.
Even though OPcache stores static arrays in shared memory (php7), it does not deduplicate them (it does for strings.)

Instead of inlining arrays, this PR leverages the `$this->parameters` property when possible.

Commits
-------

7c3d0c7a46 [DI] Reference instead of inline for array-params
2017-06-14 12:08:03 -07:00
Fabien Potencier
2fe6e69528 feature #23154 [WebProfilerBundle] Sticky ajax window (ro0NL)
This PR was squashed before being merged into the 3.4 branch (closes #23154).

Discussion
----------

[WebProfilerBundle] Sticky ajax window

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

This toggles the ajax toolbar block being sticky on click. I find it quite useful in heavy ajax apps :)

Not sure the state needs to be persisted in local storage or so, could be done :) however for our app all the navigating happens via react router, hence no real need for us to persist it between requests.

Commits
-------

b92929b0be [WebProfilerBundle] Sticky ajax window
2017-06-14 11:51:57 -07:00
Roland Franssen
b92929b0be [WebProfilerBundle] Sticky ajax window 2017-06-14 11:51:55 -07:00
Nicolas Grekas
c8cf42bcbb Merge branch '3.3' into 3.4
* 3.3:
  [TwigBundle] Add Doctrine Cache to dev dependencies
  [Yaml] Fix linting yaml with constants as keys
  [Routing] Revert the change in [#b42018] with respect to Routing/Route.php
2017-06-14 09:34:46 +02:00
Nicolas Grekas
d8d0f87793 [TwigBundle] Add Doctrine Cache to dev dependencies 2017-06-14 09:33:02 +02:00
Fabien Potencier
936c1a5c7d feature #23161 [FrameworkBundle] Deprecate useless --no-prefix option (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Deprecate useless --no-prefix option

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

It was a workaround, not needed since https://github.com/symfony/symfony/pull/21228. Let's deprecate it and remove it in 4.0.

Commits
-------

f7afa777d8 [FrameworkBundle] Deprecate useless --no-prefix option
2017-06-13 22:09:10 -07:00
Fabien Potencier
a75a32d661 bug #23166 [TwigBundle] Add Doctrine Cache to dev dependencies to fix failing unit tests (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[TwigBundle] Add Doctrine Cache to dev dependencies to fix failing unit tests

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

Currently, the unit tests of TwigBundle are failing because Doctrine Cache is missing. Before the changes of #23131, this dependency was pulled via FrameworkBundle. This PR adds Doctrine Cache to the dev dependencies of TwigBundle, so the tests pass again.

```
There were 3 errors:

1) Symfony\Bundle\TwigBundle\Tests\CacheWarmingTest::testCacheIsProperlyWarmedWhenTemplatingIsAvailable
Symfony\Component\DependencyInjection\Exception\LogicException: Annotations cannot be enabled as the Doctrine Cache library is not installed.

2) Symfony\Bundle\TwigBundle\Tests\CacheWarmingTest::testCacheIsProperlyWarmedWhenTemplatingIsDisabled
Symfony\Component\DependencyInjection\Exception\LogicException: Annotations cannot be enabled as the Doctrine Cache library is not installed.

3) Symfony\Bundle\TwigBundle\Tests\NoTemplatingEntryTest::test
Symfony\Component\DependencyInjection\Exception\LogicException: Annotations cannot be enabled as the Doctrine Cache library is not installed.
```

Commits
-------

2dfde58851 Add Doctrine Cache to dev dependencies to fix failing unit tests.
2017-06-13 19:22:52 -07:00
Fabien Potencier
748a999416 bug #23171 [Yaml] Fix linting yaml with constants as keys (chalasr)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] Fix linting yaml with constants as keys

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

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

Commits
-------

55a8d35e64 [Yaml] Fix linting yaml with constants as keys
2017-06-13 17:23:18 -07:00
Robin Chalas
55a8d35e64 [Yaml] Fix linting yaml with constants as keys 2017-06-13 23:05:27 +02:00
Robin Chalas
f7afa777d8 [FrameworkBundle] Deprecate useless --no-prefix option 2017-06-13 19:36:01 +02:00
Fabien Potencier
9649b9e5ca bug #23121 [Routing] Revert the change in [#b42018] with respect to Routing/Route.php (Dan Wilga)
This PR was submitted for the master branch but it was merged into the 3.3 branch instead (closes #23121).

Discussion
----------

[Routing] Revert the change in [#b42018] with respect to Routing/Route.php

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

...because it breaks BC with third-party code which, for instance, might use a subclass of CompiledRoute within the options portion of the Route. Refers to https://github.com/symfony/symfony/pull/21090 and https://github.com/symfony/symfony/issues/23109

Commits
-------

f09893bed4 [Routing] Revert the change in [#b42018] with respect to Routing/Route.php
2017-06-13 10:12:09 -07:00
Dan Wilga
f09893bed4 [Routing] Revert the change in [#b42018] with respect to Routing/Route.php 2017-06-13 10:11:59 -07:00
Fabien Potencier
0300412ec1 feature #23105 [SecurityBundle][Profiler] Give info about called security listeners in profiler (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[SecurityBundle][Profiler] Give info about called security listeners in profiler

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

Currently the profiler gives no info about security listeners (see fixed ticket), this displays each called listener with the time spent at calling it and its response if any.

![preview](https://image.prntscr.com/image/Wx-n-Ni_RQK5JGTdTZsdGw.png)

Commits
-------

369f19fcfd Give info about called security listeners in profiler
2017-06-13 09:07:04 -07:00
Alexander M. Turek
2dfde58851 Add Doctrine Cache to dev dependencies to fix failing unit tests. 2017-06-13 17:15:58 +02:00
Fabien Potencier
17d23a79e8 bug #23157 Fix the usage of FrameworkBundle in debug mode without Stopwatch (stof)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix the usage of FrameworkBundle in debug mode without Stopwatch

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

https://github.com/symfony/symfony/pull/23148 removed the loading of the debug.xml file when Stopwatch is not installed.
While all services defined in it are related to Stopwatch, the parameter was not (it is related to dumping the debug container in the compiler pass), which was breaking the usage of the bundle in debug mode without Stopwatch (exception triggered in the compiler pass)

Commits
-------

2ea26c1ffe Fix the usage of FrameworkBundle in debug mode without Stopwatch
2017-06-13 07:14:35 -07:00
Nicolas Grekas
7c3d0c7a46 [DI] Reference instead of inline for array-params 2017-06-13 13:14:06 +02:00
Robin Chalas
369f19fcfd Give info about called security listeners in profiler 2017-06-13 10:30:58 +02:00
Christophe Coevoet
2ea26c1ffe Fix the usage of FrameworkBundle in debug mode without Stopwatch 2017-06-13 10:29:19 +02:00
Fabien Potencier
cc2363fa6c feature #23148 [FrameworkBundle] drop hard dependency on the Stopwatch component (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] drop hard dependency on the Stopwatch component

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | related to symfony/flex#14
| License       | MIT
| Doc PR        |

Commits
-------

8d70ca0ff4 drop hard dependency on the Stopwatch component
2017-06-12 11:05:06 -07:00
Fabien Potencier
18ecbd7011 feature #23131 [FrameworkBundle] Remove dependency on Doctrine cache (fabpot)
This PR was squashed before being merged into the 3.4 branch (closes #23131).

Discussion
----------

[FrameworkBundle] Remove dependency on Doctrine cache

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

In our quest to remove hard dependencies, I propose to remove `doctrine/cache` from the default dependencies on the Framework bundle. That's possible now as we have PSR6 cache support in Symfony and because Doctrine cache is only used for the validator mapping cache.

The two other occurrences are for the serializer (already deprecated in 3.3) and for annotations, where we need to keep it, but as Doctrine annotations is already optional, that's not an issue.

Commits
-------

a4e336ea34 [FrameworkBundle] removed doctrine/cache as a dependency
b57895ccaf [FrameworkBundle] deprecated validator.mapping.cache.doctrine.apc
2017-06-12 10:50:15 -07:00
Fabien Potencier
a4e336ea34 [FrameworkBundle] removed doctrine/cache as a dependency 2017-06-12 09:10:25 -07:00
Nicolas Grekas
8bbfc96802 Merge branch '3.3' into 3.4
* 3.3:
  Fix the conditional definition of the SymfonyTestsListener
  [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass
  [EventDispatcher] Remove dead code in WrappedListener
  Fix non-dumped voters in security panel
  [Yaml] Remove line number in deprecation notices
  [SecurityBundle] Made 2 service aliases private
2017-06-12 18:03:21 +02:00
Fabien Potencier
d3d62e9fa2 bug #23132 [FrameworkBundle] Fix colliding service ids (GuilhemN)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Fix colliding service ids

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

Rereading #23044, I realized that `routing.loader.directory` is already used, so it should be changed.

Commits
-------

a4d799ad0e [FrameworkBundle] Fix colliding service ids
2017-06-12 08:47:10 -07:00
Fabien Potencier
7fc255218e bug #23141 [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix keys resolution in ResolveParameterPlaceHoldersPass

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

Keys are resolved in 3.2, but we broke that when moving to AbstractRecursivePass.

Commits
-------

9251a2143d [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass
2017-06-12 08:25:47 -07:00
Fabien Potencier
6852b105c4 bug #23145 Fix the conditional definition of the SymfonyTestsListener (stof)
This PR was merged into the 3.3 branch.

Discussion
----------

Fix the conditional definition of the SymfonyTestsListener

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

This is a continuation of the attempts at fixing the PHPUnit 5 compatibility layer for the listener.
The signature mismatch error still happened when using the PHPUnit PHAR instead of a source install (hint: people using `simple-phpunit` are using a source install).

It looks like the class definition gets loaded by PHP before executing the code placed above it (and so the early return breaks). Putting the code inside a `else` instead works fine (the class definition probably cannot bubble up).

The known difference between the PHAR and a source install is that the source install relies on autoloading while the PHAR loads all PHPUnit classes through `require_once` eagerly (and so the parent class already exists when using the Symfony file).

@jpauli is it an expected behavior that early returns before class definitions don't work consistently ?

Regarding the patch itself, an alternative would be to move the PHPUnit 6+ implementation to a dedicated class instead, and use a `class_alias` for the else clause too. But I don't think it is worth it.

Commits
-------

0ec8b1c1ff Fix the conditional definition of the SymfonyTestsListener
2017-06-12 07:56:08 -07:00
Christian Flothmann
8d70ca0ff4 drop hard dependency on the Stopwatch component 2017-06-12 15:27:27 +01:00
Christophe Coevoet
0ec8b1c1ff Fix the conditional definition of the SymfonyTestsListener 2017-06-12 15:35:45 +02:00
Nicolas Grekas
9251a2143d [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass 2017-06-12 12:11:53 +02:00
Guilhem Niot
a4d799ad0e [FrameworkBundle] Fix colliding service ids 2017-06-11 11:30:54 +02:00
Fabien Potencier
b57895ccaf [FrameworkBundle] deprecated validator.mapping.cache.doctrine.apc 2017-06-10 17:54:55 -07:00