Commit Graph

25880 Commits

Author SHA1 Message Date
Tomas
fd7f3a7e33 Fixed phpdoc typo 2016-03-07 08:38:10 +02:00
Ryan Weaver
2aea337f42 Fixing a bug where an odd number of type collisions would incorrectly autowire (instead of an error) 2016-03-06 17:03:14 -05:00
Christian Flothmann
526376f79e fix lowest TwigBridge deps versions 2016-03-06 21:40:13 +01:00
Christian Flothmann
609a6fe05a reference form type by name on Symfony 2.7 2016-03-06 18:43:56 +01:00
Fabien Potencier
a89154d0bb minor #18031 [EventDispatcher] fix syntax error (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[EventDispatcher] fix syntax error

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

Commits
-------

98cc980 [EventDispatcher] fix syntax error
2016-03-06 18:14:09 +01:00
Christian Flothmann
98cc98067e [EventDispatcher] fix syntax error 2016-03-06 18:01:13 +01:00
Fabien Potencier
4f224ef4ab bug #18019 [Intl] Update ICU to version 55 (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[Intl] Update ICU to version 55

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

The update script needed to be fixed to work with latest data files from ICU as well.

The only change I needed to do in stubs and tests is related to the way negative numbers are formatted for currencies (a change from `(£100)` to `-£100`).

Form tests needed an update as well, as some date formats have changed.

Commits
-------

fac3de6 [Form] Update form tests after the ICU data update
6822147 [Intl] Update tests and the number formatter to match behaviour of the intl extension
37a9d8c [Intl] Update the ICU data to version 55
894ce3c [Intl] Fix the update-data.php script in preparation for ICU 5.5
2016-03-06 11:37:13 +01:00
Fabien Potencier
a29e818a3f minor #18025 [2.7] Don't use reflection when possible (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7] Don't use reflection when possible

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

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

Commits
-------

35be501 Don't use reflections when possible
2016-03-06 11:26:36 +01:00
Fabien Potencier
53033617f7 minor #18021 Don't use reflections when possible (Ener-Getick)
This PR was merged into the 2.3 branch.

Discussion
----------

Don't use reflections when possible

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

Use php functions instead of reflection when possible (to improve a bit the performance).

Commits
-------

a46270a Don't use reflections when possible
2016-03-06 11:24:23 +01:00
Fabien Potencier
8d7f6ed8f9 bug #18015 [2.7][Process] Fix memory issue when using large input streams (romainneutron)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7][Process] Fix memory issue when using large input streams

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

This removes buffering of a stream input. Tests shows that this implementation is much faster and fixes some issues when streams are based on very large inputs

Commits
-------

fb8da9f [Process] Fix memory issue when using large input streams
2016-03-06 11:17:13 +01:00
Ener-Getick
a46270a61a Don't use reflections when possible 2016-03-05 18:37:04 +01:00
Ener-Getick
35be5017e7 Don't use reflections when possible 2016-03-05 18:34:36 +01:00
Jakub Zalas
fac3de628e [Form] Update form tests after the ICU data update 2016-03-05 13:21:13 +00:00
Jakub Zalas
6822147464 [Intl] Update tests and the number formatter to match behaviour of the intl extension 2016-03-05 13:11:12 +00:00
Jakub Zalas
37a9d8ca24 [Intl] Update the ICU data to version 55 2016-03-05 13:11:11 +00:00
Jakub Zalas
894ce3cbd8 [Intl] Fix the update-data.php script in preparation for ICU 5.5 2016-03-05 13:11:11 +00:00
Romain Neutron
fb8da9ff28 [Process] Fix memory issue when using large input streams 2016-03-05 11:50:53 +01:00
Christian Flothmann
c4a5b67a5a exception when registering bags for started sessions 2016-03-05 08:51:23 +01:00
Fabien Potencier
d2e5c4c3ab minor #18009 Use constant instead of function call. (Koc)
This PR was merged into the 2.3 branch.

Discussion
----------

Use constant instead of function call.

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

Commits
-------

c1edbc0 Use constant instead of function call.
2016-03-04 14:51:11 +01:00
Konstantin.Myakshin
c1edbc08bb Use constant instead of function call. 2016-03-04 15:04:09 +02:00
Fabien Potencier
759f495594 fixed test name 2016-03-04 12:06:48 +01:00
Fabien Potencier
5bbe951cde bug #16656 [HttpFoundation] automatically generate safe fallback filename (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] automatically generate safe fallback filename

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

Commits
-------

03721e3 automatically generate safe fallback filename
2016-03-04 10:42:52 +01:00
Christian Flothmann
03721e33a2 automatically generate safe fallback filename 2016-03-04 10:37:05 +01:00
Fabien Potencier
b868feb4ab feature #17734 [Cache] Count cache hits/misses in ProxyAdapter (nicolas-grekas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Cache] Count cache hits/misses in ProxyAdapter

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

I propose to add this subset of the `Doctrine\Common\Cache\Cache` interface so that we can build data collectors on top and show these stats in the web profiler.
ping @javiereguiluz

Commits
-------

e6f21f9 [Cache] Count cache hits/misses in ProxyAdapter
2016-03-04 10:36:50 +01:00
Nicolas Grekas
e6f21f999e [Cache] Count cache hits/misses in ProxyAdapter 2016-03-04 10:23:38 +01:00
Fabien Potencier
e187f8bdb1 Merge branch '2.3' into 2.7
* 2.3:
  [Console] default to stderr in the console helpers
2016-03-04 10:22:21 +01:00
Fabien Potencier
ce60be5729 bug #15794 [Console] default to stderr in the console helpers (alcohol)
This PR was squashed before being merged into the 2.3 branch (closes #15794).

Discussion
----------

[Console] default to stderr in the console helpers

Interactive input/output and informational output such as progress should go to `stderr` if available.

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

See #13730 also for previous discussion.

If someone explicitly wants to use `stdout`, they can simply pass `$output->getStream()` instead of `$output` in most use-cases.

Commits
-------

3d4e95e [Console] default to stderr in the console helpers
2016-03-04 10:20:54 +01:00
Rob Bast
3d4e95ef71 [Console] default to stderr in the console helpers 2016-03-04 10:20:49 +01:00
Fabien Potencier
1330662705 bug #18006 [HttpFoundation] Fix BC break introduced by #17642 (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #18006).

Discussion
----------

[HttpFoundation] Fix BC break introduced by #17642

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

@taylorotwell can you confirm it fixes the issue with Laravel?

Commits
-------

73ef995 [HttpFoundation] Fix BC break introduced by #17642
2016-03-04 10:04:18 +01:00
Kévin Dunglas
73ef9957b3 [HttpFoundation] Fix BC break introduced by #17642 2016-03-04 10:04:16 +01:00
Fabien Potencier
f5cf886500 Merge branch '3.0'
* 3.0:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  Improved the error message when using "@" in a decorated service
  Improve error reporting in router panel of web profiler
  [DoctrineBridge][Form] Fix performance regression in EntityType
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  minor [Form] fix tests added by #16886
  Remove _path from query parameters when fragment is a subrequest and request attributes are already set Added tests for _path removal in FragmentListener
  Simplified everything
  Added a test
  Fixed the problem in an easier way
  Fixed a syntax issue
  Improved the error message when a template is not found
  [CodingStandards] Conformed to coding standards
  [TwigBundle] fixed Include file locations in "Template could not be found" exception
2016-03-04 08:56:56 +01:00
Fabien Potencier
4a08c88755 Merge branch '2.8' into 3.0
* 2.8:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  Improved the error message when using "@" in a decorated service
  Improve error reporting in router panel of web profiler
  [DoctrineBridge][Form] Fix performance regression in EntityType
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  minor [Form] fix tests added by #16886
  Remove _path from query parameters when fragment is a subrequest and request attributes are already set Added tests for _path removal in FragmentListener
  Simplified everything
  Added a test
  Fixed the problem in an easier way
  Fixed a syntax issue
  Improved the error message when a template is not found
  [CodingStandards] Conformed to coding standards
  [TwigBundle] fixed Include file locations in "Template could not be found" exception
2016-03-04 08:55:57 +01:00
Fabien Potencier
0f3e1a3c34 Merge branch '2.7' into 2.8
* 2.7:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  Improved the error message when using "@" in a decorated service
  Improve error reporting in router panel of web profiler
  [DoctrineBridge][Form] Fix performance regression in EntityType
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  minor [Form] fix tests added by #16886
  Remove _path from query parameters when fragment is a subrequest and request attributes are already set Added tests for _path removal in FragmentListener
  Simplified everything
  Added a test
  Fixed the problem in an easier way
  Fixed a syntax issue
  Improved the error message when a template is not found
  [CodingStandards] Conformed to coding standards
  [TwigBundle] fixed Include file locations in "Template could not be found" exception
2016-03-04 08:54:35 +01:00
Fabien Potencier
d66f0ebe35 Merge branch '2.3' into 2.7
* 2.3:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  Remove _path from query parameters when fragment is a subrequest and request attributes are already set Added tests for _path removal in FragmentListener
  Simplified everything
  Added a test
  Fixed the problem in an easier way
  Fixed a syntax issue
  Improved the error message when a template is not found
  [CodingStandards] Conformed to coding standards
  [TwigBundle] fixed Include file locations in "Template could not be found" exception
2016-03-04 08:52:28 +01:00
Fabien Potencier
5ebeccafa5 feature #17887 Show more information in the security profiler (javiereguiluz)
This PR was squashed before being merged into the 3.1-dev branch (closes #17887).

Discussion
----------

Show more information in the security profiler

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

This is an early prototype to explore the feature of displaying more information in the security panel. Example:

![profiler_security](https://cloud.githubusercontent.com/assets/73419/13221929/0235fc46-d97e-11e5-981a-249b7148f3a6.png)

Commits
-------

b12152d Show more information in the security profiler
2016-03-04 08:25:19 +01:00
Javier Eguiluz
b12152d1eb Show more information in the security profiler 2016-03-04 08:25:17 +01:00
Fabien Potencier
9a5ea71c22 bug #17984 Allow to normalize \Traversable when serializing xml (Ener-Getick)
This PR was merged into the 2.3 branch.

Discussion
----------

Allow to normalize \Traversable when serializing xml

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

It's impossible to normalize an object implementing ``\Traversable`` when using the ``XMLEncoder``. For example we can't customize the serializer output when serializing a ``FormInterface`` instance.

So my proposition is to fix this by using the default XML encoder output only when the serializer can't normalize the data.

Commits
-------

97c5d27 Allow to normalize \Traversable
2016-03-04 08:19:22 +01:00
Fabien Potencier
8713c7efaf minor #17997 Updated all the README files (javiereguiluz)
This PR was squashed before being merged into the 2.3 branch (closes #17997).

Discussion
----------

Updated all the README files

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

Related to #17995.

Commits
-------

2e81248 Updated all the README files
2016-03-04 08:12:08 +01:00
Javier Eguiluz
2e812481c9 Updated all the README files 2016-03-04 08:12:06 +01:00
Nicolas Grekas
d791d78d34 minor #18002 [TwigBundle] Fix failing test on appveyor (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[TwigBundle] Fix failing test on appveyor

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

Commits
-------

d5bbc3c [TwigBundle] Fix failing test on appveyor
2016-03-03 18:39:39 +01:00
Nicolas Grekas
d5bbc3c6cb [TwigBundle] Fix failing test on appveyor 2016-03-03 18:24:01 +01:00
Fabien Potencier
37569be45f bug #17434 Improved the error message when a template is not found (rvanginneken, javiereguiluz)
This PR was merged into the 2.3 branch.

Discussion
----------

Improved the error message when a template is not found

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

### Before

![template_error_before](https://cloud.githubusercontent.com/assets/73419/12414237/7db29212-be94-11e5-85b4-c6444aa853f8.png)

### After

![template_error_after](https://cloud.githubusercontent.com/assets/73419/12414242/80ed1eca-be94-11e5-992e-a0596a1e95ca.png)

This seems to work in the browser ... but I can't make tests pass. Could anybody please help me? Thanks!

Commits
-------

0134d76 Simplified everything
19bfa2e Added a test
88b913b Fixed the problem in an easier way
35f082f Fixed a syntax issue
968476b Improved the error message when a template is not found
e9d951a [CodingStandards] Conformed to coding standards
d3fe07b [TwigBundle] fixed Include file locations in "Template could not be found" exception
2016-03-03 15:31:15 +01:00
Fabien Potencier
0e5ac97ee2 feature #17642 [FrameworkBundle] [DX] Add Controller::json method to make it easy to send json (mcfedr)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[FrameworkBundle] [DX] Add `Controller::json` method to make it easy to send json

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

Its currently a awkward to use Serializer component to send a `JsonResponse`.

I have tried two approaches

1. use `Serializer::normalize` and `JsonResponse`
1. use `Serializer::serialize` and a plain `Response`, and set the `content-type`

In either cases there is need for a custom `json` function so as not to repeat yourself and there are disadvantages.

1. In the first case you are only partly using `Serializer` and any custom `Encoder` would be skipped
1. In the second you are not making use of `JsonResponse`, particular disadvantage if you want to support JSONP.

This new `json` method uses the serializer component is enabled it is used to generate the json data, and falls back to normal `JsonResponse` when its not.

Commits
-------

f904a2b Add a Controller function to make it easy to return json
2016-03-03 14:18:37 +01:00
Fabien Potencier
aab27839f9 bug #17687 Improved the error message when using "@" in a decorated service (javiereguiluz)
This PR was squashed before being merged into the 2.7 branch (closes #17687).

Discussion
----------

Improved the error message when using "@" in a decorated service

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

Commits
-------

e7690ba Improved the error message when using "@" in a decorated service
2016-03-03 14:15:14 +01:00
Javier Eguiluz
e7690ba5c4 Improved the error message when using "@" in a decorated service 2016-03-03 14:15:12 +01:00
Fabien Potencier
9d58ad92fe bug #17744 Improve error reporting in router panel of web profiler (javiereguiluz)
This PR was squashed before being merged into the 2.7 branch (closes #17744).

Discussion
----------

Improve error reporting in router panel of web profiler

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

### Problem

If you define a route condition like this:

```yaml
app:
    resource: '@AppBundle/Controller/'
    type:     annotation
    condition: "request.server.get('HTTP_HOST') matches '/.*\.dev/'"
```

When browsing the Routing panel in the web profiler, you see an exception:

![problem](https://cloud.githubusercontent.com/assets/73419/12930027/553eeb08-cf76-11e5-90b1-ab0de6175d4e.png)

#### Why?

Because the route condition uses the `request` object, but the special `TraceableUrlMatcher` class doesn't get access to the real `request` object but to the special object obtained via:

```php
$request = $profile->getCollector('request');
```

These are the contents of this pseudo-request:

![cause](https://cloud.githubusercontent.com/assets/73419/12930052/804ea248-cf76-11e5-9c38-2e43e1654065.png)

`request.server.get(...)` condition fails because `request.server` is `null`. The full exception message shows this:

![exception](https://cloud.githubusercontent.com/assets/73419/12930079/9c7d6058-cf76-11e5-8eeb-45f5059c824c.png)

### Solution

I propose to catch all exceptions in `TraceableUrlMatcher` and display an error message with some details of the exception:

![error_message](https://cloud.githubusercontent.com/assets/73419/12930106/b29e31d2-cf76-11e5-868c-98d8b0cc4e5b.png)

Commits
-------

1001554 Improve error reporting in router panel of web profiler
2016-03-03 14:12:45 +01:00
Javier Eguiluz
10015546b0 Improve error reporting in router panel of web profiler 2016-03-03 14:12:44 +01:00
Fabien Potencier
eee9bfbef6 bug #17894 [FrameworkBundle] Fix a regression in handling absolute template paths (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[FrameworkBundle] Fix a regression in handling absolute template paths

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

Regression introduced by #15272.

Commits
-------

d8c493f [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
2016-03-03 13:59:03 +01:00
Fabien Potencier
46d1d2407a bug #17990 [DoctrineBridge][Form] Fix performance regression in EntityType (kimlai)
This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes #17990).

Discussion
----------

[DoctrineBridge][Form] Fix performance regression in EntityType

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

A performance regression was introduced in 2336d5c466

Before, the default behaviour of the `DoctrineLoader` was to only fetch the entities selected in the submitted form.

After, the optimization was only performed when the `choice_value` option was set to `null`.
However, the `DoctrineType` sets a non-null default value to `choice_value`, which means that the default behaviour was not using the optimization anymore.

This commit restores the default behaviour (while keeping the previous commit intent).

References:
- https://github.com/symfony/symfony/blob/v2.7.10/src/Symfony/Bridge/Doctrine/Form/ChoiceList/DoctrineChoiceLoader.php#L149
- https://github.com/symfony/symfony/blob/v2.7.10/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php#L216

Commits
-------

64c80a6 [DoctrineBridge][Form] Fix performance regression in EntityType
2016-03-03 13:52:48 +01:00
Kim Laï Trinh
64c80a6791 [DoctrineBridge][Form] Fix performance regression in EntityType 2016-03-03 13:52:47 +01:00