Commit Graph

14734 Commits

Author SHA1 Message Date
Nicolas Grekas
98dce411e8 [Cache] Workaround krakjoe/apcu#170 2016-04-12 08:30:53 +02:00
JhonnyL
46ea9cc453 [DependencyInjection] fix phpDoc 2016-04-11 16:45:49 +02:00
Fabien Potencier
8bf49692b6 minor #18499 [DependencyInjection] Add coverage for invalid Expression in exportParameters (JhonnyL)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] Add coverage for invalid Expression in exportParameters

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

Commits
-------

1931b14 [DependencyInjection] Add coverage for invalid Expression in exportParameters
2016-04-11 05:50:45 -07:00
Fabien Potencier
3cd380da42 Merge branch '2.3' into 2.7
* 2.3:
  [DependencyInjection] Add coverage for all invalid arguments in exportParameters
2016-04-11 05:48:18 -07:00
Fabien Potencier
302e1928b8 minor #18500 [DependencyInjection] Add coverage for all invalid arguments in exportParameters (JhonnyL)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] Add coverage for all invalid arguments in exportParameters

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

Commits
-------

87c4f23 [DependencyInjection] Add coverage for all invalid arguments in exportParameters
2016-04-11 05:47:06 -07:00
JhonnyL
1931b14a60 [DependencyInjection] Add coverage for invalid Expression in exportParameters 2016-04-11 10:53:08 +02:00
Christian Flothmann
351977095f some tweaks to the controller argument resolver
* update some docblocks

* remove the `LegacyArgumentResolver` class

* simplify the `TraceableControllerResolver`
2016-04-11 10:32:34 +02:00
JhonnyL
87c4f23764 [DependencyInjection] Add coverage for all invalid arguments in exportParameters 2016-04-10 20:31:05 +02:00
Christian Flothmann
0a469a418f anonymous services are always private 2016-04-09 16:46:37 +02:00
Christian Flothmann
064aedf9e3 Merge branch '2.3' into 2.7
* 2.3:
  [DependencyInjection] Resolve aliases before removing abstract services + add tests
  Fix Dom Crawler select option with empty value
  Remove unnecessary option assignment
  remove unused variable
  [PropertyAccess] Fix regression
2016-04-09 12:56:56 +02:00
Peter Rehm
05fe6f9b07 [Form] FormValidator removed code related to removed option 2016-04-07 17:44:59 +02:00
Fabien Potencier
0b67fa3dd1 feature #18371 [FrameworkBundle] integrate the Cache component (xabbuh, nicolas-grekas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[FrameworkBundle] integrate the Cache component

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

Last commit is the diff with #17868.

Commits
-------

4152634 [FrameworkBundle] Add default pool & system adapter
714b916 [FrameworkBundle] Add & use Psr6CacheClearer
4740c5c [FrameworkBundle] use abstract cache.pool decoration and aliases
92b1a20 [FrameworkBundle] Fix and add tests for cache pool wiring
e44bfdc [FrameworkBundle] Add cache-pool tag and wiring
281eafa [FrameworkBundle] Integrate the Cache component
bc51fde [Cache] Normalize constructor arguments order
2016-04-07 17:36:32 +02:00
Fabien Potencier
eb40f161d7 feature #18440 Add the kernel.controller_arguments event (stof)
This PR was merged into the 3.1-dev branch.

Discussion
----------

Add the kernel.controller_arguments event

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

I'm not sure this can be integrated in 3.1 due to the feature freeze, but it would be great if it is, as it is a must-have to be able to make the ``@Security`` annotation compatible with the new argument resolver system (as we need to be able to run the security assertion after the resolving).

I made the arguments mutable here for consistency with ``kernel.controller`` (and @fabpot replied LGTM in the RFC when I suggested it).

Commits
-------

af02e2a Add the kernel.controller_arguments event
2016-04-07 17:31:25 +02:00
Fabien Potencier
416f7d751f bug #18449 [PropertyAccess] Fix regression (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[PropertyAccess] Fix regression

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

All credits go to @MisatoTremor

I don't measure any perf impact.

Commits
-------

2b30d48 [PropertyAccess] Fix regression
2016-04-07 17:14:27 +02:00
Fabien Potencier
283875b325 bug #18429 [Console] Correct time formatting. (camporter)
This PR was squashed before being merged into the 2.7 branch (closes #18429).

Discussion
----------

[Console] Correct time formatting.

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

The previous behavior caused dramatic jumps in the reported time instead of smoothly transitioning between time ranges.
Added tests around the new behavior and the transitions between seconds, minutes, and days.

Commits
-------

b264b66 [Console] Correct time formatting.
2016-04-07 17:12:31 +02:00
Cameron Porter
b264b66a90 [Console] Correct time formatting. 2016-04-07 17:12:27 +02:00
Fabien Potencier
004a6678d2 bug #18467 [DependencyInjection] Resolve aliases before removing abstract services + add tests (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] Resolve aliases before removing abstract services + add tests

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

Commits
-------

9802a41 [DependencyInjection] Resolve aliases before removing abstract services + add tests
2016-04-07 17:04:06 +02:00
Christophe Coevoet
af02e2abe1 Add the kernel.controller_arguments event 2016-04-07 16:51:22 +02:00
Nicolas Grekas
41526342ea [FrameworkBundle] Add default pool & system adapter 2016-04-07 14:29:40 +02:00
Christophe Coevoet
abf4f67605 bug #18460 [DomCrawler] Fix select option with empty value (Matt Wells)
This PR was merged into the 2.3 branch.

Discussion
----------

[DomCrawler] Fix select option with empty value

| Q             | A
| ------------- | ---
| Branch?       | 2.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 using the Laravel's testing suite which makes use of the Symfony DOM Crawler (v3.0.2). I have been populating a form with a select which has a value which can be an empty value.

For example, with this select you can choose your gender or leave it empty if you don't want to specify:

```html
<select name="gender">
  <option selected></option>
  <option>Female</option>
  <option>Male</option>
</select>
```

When the `DomCrawler\Field::getValue()` is called I was expect to get the value `''` however I was actually getting `'on'`. This is caused by the [DomCrawler\Field::buildOptionValue()](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/DomCrawler/Field/ChoiceFormField.php#L262-L271) sets the default value to 'on' when there is no value which makes sense for ratios and checkboxes but not for select.

I have tracked this bug back to v2.3 but it is still present in v3, however, the default value was changed from '1' to 'on' in v2.5 which means that this patch will conflict when merging up the maintained versions.

Commits
-------

58276a2 Fix Dom Crawler select option with empty value
2016-04-07 10:21:15 +02:00
Jules Pietri
724fd3b477 updated changelogs after #17589 2016-04-06 20:10:02 +02:00
Nicolas Grekas
9802a41b3c [DependencyInjection] Resolve aliases before removing abstract services + add tests 2016-04-06 19:38:23 +02:00
Matt Wells
58276a274e Fix Dom Crawler select option with empty value 2016-04-06 14:13:46 +01:00
Tobias Schultze
e251e36467 minor #18456 [Form] Remove unnecessary option assignment (sergeyfedotov)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Remove unnecessary option assignment

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

Option assignment is not required because the prototype inherits this option from the parent form via standard inheritance mechanism.

Related pull requests: #16959, #18317

Commits
-------

da8a197 Remove unnecessary option assignment
2016-04-06 13:21:17 +02:00
Sergey Fedotov
da8a19728b Remove unnecessary option assignment 2016-04-05 23:03:15 +03:00
Christian Flothmann
f82a25f288 fix tests (use non-deprecated options)
* reference form type by its FQCN instead of its string name
* use the `entry_type` and `entry_options` options instead of the
  deprecated `type` and `options` options
2016-04-05 20:37:30 +02:00
Christian Flothmann
d5964aee96 remove unused variable 2016-04-05 20:29:19 +02:00
Christian Flothmann
4b78d03379 mock the proper method 2016-04-05 20:28:19 +02:00
Nicolas Grekas
2b30d486db [PropertyAccess] Fix regression 2016-04-05 18:42:48 +02:00
Fabien Potencier
16ac46be44 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Improve phpdoc
  [Logging] Add support for firefox in ChromePhpHandler
  Windows 10 version check in just one line
  Detect CLI color support for Windows 10 build 10586
  [Security] Fixed SwitchUserListener when exiting an impersonication with AnonymousToken
  [EventDispatcher] Try first if the event is Stopped
  [FrameworkBundle] fixes grammar in container:debug command manual.
  [Form] fix "prototype" not required when parent form is not required
2016-04-05 18:36:54 +02:00
Fabien Potencier
034f47635c Merge branch '2.3' into 2.7
* 2.3:
  [HttpFoundation] Improve phpdoc
  [Logging] Add support for firefox in ChromePhpHandler
  [Security] Fixed SwitchUserListener when exiting an impersonication with AnonymousToken
  [Form] fix "prototype" not required when parent form is not required
2016-04-05 18:36:43 +02:00
Fabien Potencier
5b6da77a96 bug #18425 [Security] Fixed SwitchUserListener when exiting an impersonation with AnonymousToken (lyrixx)
This PR was merged into the 2.3 branch.

Discussion
----------

[Security] Fixed SwitchUserListener when exiting an impersonation with AnonymousToken

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

If you configure a firewall with switch user with `role: IS_AUTHENTICATED_ANONYMOUSLY` it's impossible to exit the
impersonation because the next line `$this->provider->refreshUser($original->getUser())` will fail. It fails because `RefreshUser`
expects an instance of `UserInterface` and here it's a string.

Therefore, it does not make sense to refresh an Anonymous Token, right ?

Commits
-------

59fea72 [Security] Fixed SwitchUserListener when exiting an impersonication with AnonymousToken
2016-04-05 18:29:34 +02:00
Fabien Potencier
134a7c9c72 bug #18317 [Form] fix "prototype" not required when parent form is not required (HeahDude)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] fix "prototype" not required when parent form is not required

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

Commits
-------

7df9ca2 [Form] fix "prototype" not required when parent form is not required
2016-04-05 18:24:57 +02:00
Matthieu Napoli
6bfbb2e25f [HttpFoundation] Improve phpdoc
Improve the phpdoc for the `$default` parameter of the `get()` method. It wasn't clear when the default value would be used (whether the key would not exist or the value was `null` or nullish).

The comment is now in sync with `Symfony\Component\HttpFoundation\ParameterBag::get()`.
2016-04-05 17:56:01 +02:00
Nicolas Grekas
714b916d5d [FrameworkBundle] Add & use Psr6CacheClearer 2016-04-05 16:36:41 +02:00
Michele Locati
5f5a71770b Windows 10 version check in just one line 2016-04-04 19:11:39 +02:00
Nicolas Grekas
01fb26b4d2 Merge branch '2.3' into 2.7
* 2.3:
  Detect CLI color support for Windows 10 build 10586
  [EventDispatcher] Try first if the event is Stopped
  [FrameworkBundle] fixes grammar in container:debug command manual.

Conflicts:
	src/Symfony/Component/EventDispatcher/EventDispatcher.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
2016-04-04 19:08:16 +02:00
Michele Locati
472a7bffee Detect CLI color support for Windows 10 build 10586 2016-04-04 19:01:16 +02:00
Grégoire Pineau
59fea72a43 [Security] Fixed SwitchUserListener when exiting an impersonication with AnonymousToken
If you configure a firewall with switch user with `role: IS_AUTHENTICATED_ANONYMOUSLY` it's impossible to exit the
impersonation because the next line `$this->provider->refreshUser($original->getUser())` will fail. It fails because `RefreshUser`
expects an instance of `UserInterface` and here it's a string.

Therefore, it does not make sense to refresh an Anonymous Token, right ?
2016-04-04 14:27:18 +02:00
Nicolas Grekas
3a109a296c [Process] Fixes & testNonBlockingNorClearingIteratorOutput 2016-04-04 12:18:36 +02:00
Nicolas Grekas
bc51fdeec3 [Cache] Normalize constructor arguments order 2016-04-04 11:41:14 +02:00
Nicolas Grekas
a9dcce1f51 minor #18422 [DependencyInjection] Fix tests of #18144 (HeahDude)
This PR was squashed before being merged into the 3.1-dev branch (closes #18422).

Discussion
----------

[DependencyInjection] Fix tests of #18144

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

Commits
-------

5e7dbae [DependencyInjection] Fix tests of #18144
2016-04-04 11:35:18 +02:00
Jules Pietri
5e7dbae9a3 [DependencyInjection] Fix tests of #18144 2016-04-04 11:35:16 +02:00
Nicolas Grekas
41f3f82faa [Cache] Fix tests 2016-04-04 11:25:57 +02:00
Grégoire Pineau
a30e1662d8 [EventDispatcher] Try first if the event is Stopped 2016-04-04 11:22:54 +02:00
Fabien Potencier
cef7e5b1b0 feature #18308 Added an ArgumentResolver with clean extension point (iltar, HeahDude)
This PR was merged into the 3.1-dev branch.

Discussion
----------

Added an ArgumentResolver with clean extension point

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | #17933 (pre-work), #1547, #10710
| License       | MIT
| Doc PR        | symfony/symfony-docs#6422

**This PR is a follow up for and blocked by: #18187**, relates to #11457 by @WouterJ. When reviewing, please take the last commit: [Added an ArgumentResolver with clean extension point](4c092b31f9)

This PR provides:
- The ability to tag your own `ArgumentValueResolverInterface`. This means that you can effectively expand on the argument resolving in the `HttpKernel` without having to implement your own `ArgumentResolver`.

- The possibility to cache away argument metadata via a new `ArgumentMetadataFactory` which simply fetches the data from the cache, effectively omitting 1 reflection call per request. *Not implemented in this PR, but possible once this is merged.*

- The possibility to add a PSR-7 adapter to resolve the correct request, avoids the paramconverters
- The possibility to add a value resolver to fetch stuff from $request->query
- Drupal could simplify [their argument resolving](https://github.com/drupal/drupal/blob/8.1.x/core/lib/Drupal/Core/Controller/ControllerResolver.php) by a lot
- etc.

The aim for this PR is to provide a 100% BC variant to add argument resolving in a clean way, this is shown by the 2 tests: `LegacyArgumentResolverTest` and `ArgumentResolverTest`.

/cc @dawehner @larowlan if you have time, can you check the impact for Drupal? I think this should be a very simple change which should make it more maintainable.

Commits
-------

1bf80c9 Improved DX for the ArgumentResolver
f29bf4c Refactor ArgumentResolverTest
cee5106 cs fixes
cfcf764 Added an ArgumentResolver with clean extension point
360fc5f Extracting arg resolving from ControllerResolver
2016-04-03 18:53:12 +02:00
Fabien Potencier
162338e793 minor #18408 [Ldap] [Doc] Update README.md (csarrazi)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Ldap] [Doc] Update README.md

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

Fixes a typo from #18387

Commits
-------

579e8d4 Update README.md
2016-04-03 14:54:31 +02:00
Fabien Potencier
22e0eaeffe feature #18414 [Process] Implement IteratorAggregate to stream output (nicolas-grekas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Process] Implement IteratorAggregate to stream output

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

Sibling to #18386 for iterating of the output streams.

Commits
-------

5947f5d [Process] Implement IteratorAggregate to stream output
2016-04-03 13:22:10 +02:00
Fabien Potencier
804b92414b fixed CS 2016-04-03 09:41:26 +02:00
Fabien Potencier
c130bd634c feature #18144 [DI] Only rebuild autowiring cache when actually needed (weaverryan)
This PR was squashed before being merged into the 3.1-dev branch (closes #18144).

Discussion
----------

[DI] Only rebuild autowiring cache when actually needed

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

With autowiring, the container is currently rebuilt when an autowired class is modified in any way. That makes it unusable for large systems. However, this doesn't need to be true: we only need to rebuild the cache if a construct argument changes. This adds that change, and it's quite simple

This idea can/should also be adapted easily to the `@Route` cache (I don't believe it has something "smart" like this).

Thanks!

Commits
-------

3e97626 [DI] Only rebuild autowiring cache when actually needed
2016-04-03 09:35:23 +02:00
Ryan Weaver
3e976267c0 [DI] Only rebuild autowiring cache when actually needed 2016-04-03 09:35:21 +02:00
Nicolas Grekas
5947f5d8b1 [Process] Implement IteratorAggregate to stream output 2016-04-02 15:13:12 +02:00
Iltar van der Berg
1bf80c92ee Improved DX for the ArgumentResolver 2016-04-02 13:06:02 +02:00
Fabien Potencier
dc189f0793 feature #18386 [Process] Add InputStream to seamlessly feed running processes (nicolas-grekas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Process] Add InputStream to seamlessly feed running processes

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

Look at the tests, beautiful, isn't it?

Commits
-------

3d20b6c [Process] Add InputStream to seamlessly feed running processes
2016-04-02 10:44:52 +02:00
Nicolas Grekas
82f0acfd5e Merge branch '3.0'
* 3.0:
  [travis] Disable hirak/prestissimo for deps=low/high tests
  Fixed the "hover" state of the profiler sidebar menu
  [HttpFoundation] fix phpdoc of UploadedFile
  Lower complexity of Form:isValid()
  skipped dns-sensitive tests when DnsMock is not found
  fixed typo
  [FrameworkBundle] Return the invokable service if its name is the class name
  [ci] Skip dns-sensitive tests when DnsMock is not found
  Exclude Bridge\PhpUnit from composer.json by default
  fixed CS
  Optimize ReplaceAliasByActualDefinitionPass
  [Process] use __METHOD__ where applicable
  [Routing] Don't needlessly execute strtr's as they are fairly expensive

Conflicts:
	.travis.yml
2016-04-02 10:08:03 +02:00
Nicolas Grekas
f990f1bea0 Merge branch '2.8' into 3.0
* 2.8:
  [travis] Disable hirak/prestissimo for deps=low/high tests
  Fixed the "hover" state of the profiler sidebar menu
  [HttpFoundation] fix phpdoc of UploadedFile
  Lower complexity of Form:isValid()
  skipped dns-sensitive tests when DnsMock is not found
  [FrameworkBundle] Return the invokable service if its name is the class name
  [ci] Skip dns-sensitive tests when DnsMock is not found
  Exclude Bridge\PhpUnit from composer.json by default
  fixed CS
  Optimize ReplaceAliasByActualDefinitionPass
  [Process] use __METHOD__ where applicable
  [Routing] Don't needlessly execute strtr's as they are fairly expensive

Conflicts:
	.travis.yml
	src/Symfony/Component/DependencyInjection/Compiler/ReplaceAliasByActualDefinitionPass.php
2016-04-02 10:04:34 +02:00
Nicolas Grekas
e7d7e1ee38 Merge branch '2.7' into 2.8
* 2.7:
  [travis] Disable hirak/prestissimo for deps=low/high tests
  [HttpFoundation] fix phpdoc of UploadedFile
  Lower complexity of Form:isValid()
  skipped dns-sensitive tests when DnsMock is not found
  [FrameworkBundle] Return the invokable service if its name is the class name
  [ci] Skip dns-sensitive tests when DnsMock is not found
  Exclude Bridge\PhpUnit from composer.json by default
  fixed CS
  Optimize ReplaceAliasByActualDefinitionPass
  [Process] use __METHOD__ where applicable
  [Routing] Don't needlessly execute strtr's as they are fairly expensive
2016-04-02 09:57:47 +02:00
Nicolas Grekas
eb23f056f0 Merge branch '2.3' into 2.7
* 2.3:
  [travis] Disable hirak/prestissimo for deps=low/high tests
  [HttpFoundation] fix phpdoc of UploadedFile
  [ci] Skip dns-sensitive tests when DnsMock is not found
  Optimize ReplaceAliasByActualDefinitionPass
  [Process] use __METHOD__ where applicable

Conflicts:
	.travis.yml
	src/Symfony/Component/DependencyInjection/Compiler/ReplaceAliasByActualDefinitionPass.php
	src/Symfony/Component/Process/Process.php
	src/Symfony/Component/Process/ProcessBuilder.php
2016-04-02 09:48:01 +02:00
Nicolas Grekas
3d20b6c46b [Process] Add InputStream to seamlessly feed running processes 2016-04-01 20:36:34 +02:00
Charles Sarrazin
579e8d4d6c Update README.md 2016-04-01 19:25:50 +02:00
Tobias Schultze
cbcac5632b [HttpFoundation] fix phpdoc of UploadedFile 2016-04-01 13:54:44 +02:00
Jules Pietri
f29bf4cd4a Refactor ArgumentResolverTest 2016-04-01 11:46:27 +02:00
Jules Pietri
cee5106960 cs fixes 2016-04-01 11:46:27 +02:00
Iltar van der Berg
cfcf764d24 Added an ArgumentResolver with clean extension point 2016-04-01 11:46:27 +02:00
Iltar van der Berg
360fc5fc4b Extracting arg resolving from ControllerResolver 2016-04-01 11:46:27 +02:00
Tobias Schultze
c41d377e79 minor #18397 fixed typo (fabpot)
This PR was merged into the 3.0 branch.

Discussion
----------

fixed typo

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

As of Symfony 3.0, we only get the _format from the request attributes. Before, we also looked at the request query string, ... This PR fixes the phpdoc for Symfony 3.x.

Commits
-------

78830a1 fixed typo
2016-04-01 11:30:30 +02:00
Nicolas Grekas
8e1c60af3c Merge branch '3.0'
* 3.0:
  [Intl] Fix int32 min boundary check
  [VarDumper] Relax tests to pass on appveyor
  Fixed the styles of the Symfony icon in the web debug toolbar
2016-04-01 10:39:52 +02:00
Nicolas Grekas
2ca1950893 Merge branch '2.8' into 3.0
* 2.8:
  [VarDumper] Relax tests to pass on appveyor
  Fixed the styles of the Symfony icon in the web debug toolbar
2016-04-01 10:39:25 +02:00
Krzysztof Piasecki
d583ec3543 Lower complexity of Form:isValid() 2016-04-01 09:09:19 +02:00
Fabien Potencier
35be993861 feature #18167 [DependencyInjection] Fix a limitation of the PhpDumper (Ener-Getick)
This PR was squashed before being merged into the 3.1-dev branch (closes #18167).

Discussion
----------

[DependencyInjection] Fix a limitation of the PhpDumper

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

The ``PhpDumper`` cannot currently dump several services' id containing characters unsupported by php.
This PR tries to solve this issue by removing the unsupported characters and by sufixing their camelized association to avoid conflicts.

Commits
-------

0d147b2 [DependencyInjection] Fix a limitation of the PhpDumper
2016-04-01 08:52:24 +02:00
Ener-Getick
0d147b254b [DependencyInjection] Fix a limitation of the PhpDumper 2016-04-01 08:52:19 +02:00
Nicolas Grekas
f29476e514 [Intl] Fix int32 min boundary check 2016-04-01 08:34:33 +02:00
Fabien Potencier
aa459497bd feature #18387 [DX] [LDAP] Added default service name for the Security component's Ldap providers (csarrazi)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[DX] [LDAP] Added default service name for the Security component's Ldap providers

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

This PR adds a default service name (`ldap`) for the Security component's Ldap factories (`LdapFactory`, `FormLoginLdapFactory` and `HttpBasicLdapFactory`.

Commits
-------

29e3d38 Added default service name for the Security component's Ldap providers
2016-04-01 08:33:02 +02:00
Fabien Potencier
b3580ce832 minor #18398 skipped dns-sensitive tests when DnsMock is not found (2.7) (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

skipped dns-sensitive tests when DnsMock is not found (2.7)

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

Commits
-------

efc1de7 skipped dns-sensitive tests when DnsMock is not found
2016-04-01 08:18:52 +02:00
Fabien Potencier
efc1de7786 skipped dns-sensitive tests when DnsMock is not found 2016-04-01 08:10:39 +02:00
Fabien Potencier
78830a16fc fixed typo 2016-04-01 08:03:58 +02:00
Nicolas Grekas
6dbb11719e [VarDumper] Relax tests to pass on appveyor 2016-03-31 22:42:22 +02:00
Nicolas Grekas
7e01187781 [ci] Skip dns-sensitive tests when DnsMock is not found 2016-03-31 22:06:39 +02:00
Christian Flothmann
6c3ddf1d88 [Translation] deprecate the backup feature 2016-03-31 20:23:24 +02:00
Charles Sarrazin
29e3d389e5 Added default service name for the Security component's Ldap providers 2016-03-31 18:22:22 +02:00
Jules Pietri
7df9ca2aeb [Form] fix "prototype" not required when parent form is not required 2016-03-31 14:29:18 +02:00
Fabien Potencier
b03d370be0 feature #18036 [Serializer] XmlEncoder: Make load flags configurable (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #18036).

Discussion
----------

[Serializer] XmlEncoder: Make load flags configurable

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

Commits
-------

0826068 [Serializer] XmlEncoder: Make load flags configurable
2016-03-31 12:08:54 +02:00
Kévin Dunglas
08260680e4 [Serializer] XmlEncoder: Make load flags configurable 2016-03-31 12:08:49 +02:00
Fabien Potencier
ba1cd26237 fixed CS 2016-03-31 12:00:43 +02:00
Fabien Potencier
f03dc6eec5 minor #18257 [Routing] Don't needlessly execute strtr's as they are fairly expensive (arjenm)
This PR was merged into the 2.7 branch.

Discussion
----------

[Routing] Don't needlessly execute strtr's as they are fairly expensive

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

As requested in #18230 this is a new version of the prevention of using strtr's. I've posted some performance-numbers in that PR as well.

Commits
-------

b3da6a1 [Routing] Don't needlessly execute strtr's as they are fairly expensive
2016-03-31 11:59:59 +02:00
Fabien Potencier
9945d8a159 bug #18265 Optimize ReplaceAliasByActualDefinitionPass (ajb-in)
This PR was merged into the 2.3 branch.

Discussion
----------

Optimize ReplaceAliasByActualDefinitionPass

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

Previous implementation passed over every definition for every alias (n*m runtime).
New implementation passes once over all aliases and once over all definitions (n+m).
Also removing needless "restart" logic.

Commits
-------

ab8dc0c Optimize ReplaceAliasByActualDefinitionPass
2016-03-31 11:36:43 +02:00
Fabien Potencier
536a6cdbd8 feature #17589 [3.1] [WebProfilerBundle] [DX] Feature allow forward and redirection detection in wdt (HeahDude)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[3.1] [WebProfilerBundle] [DX] Feature allow forward and redirection detection in wdt

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

This PR allows to :
- track explicit forward from `\Symfony\Bundle\FrameWorkBundle\Controller\Controller` in the web debug toolbar.
- or pass a request attribute `_forwarded` with the current request attributes (an instance of `ParameterBag`) as value to your sub request before handling it.
- see if you've been redirected (require session enabled)

When redirected you will see the name of the route (if any) and a link to the profile of the original request.

![redirect](https://cloud.githubusercontent.com/assets/10107633/12716952/9aacdcba-c8e4-11e5-9a64-d26fe27f1cae.jpg)

In case of forwarding, the name of the controller is a file link and next to it there is a direct link to the profile of the sub request.

![forward](https://cloud.githubusercontent.com/assets/10107633/12716968/ba6b1fbc-c8e4-11e5-85fc-7f71969cb372.jpg)

This works pretty well in __Silex__ too by registering `SessionServiceProvider()` for redirections or by providing this method for forwarding :

```php
class App extends \Silex\Application
//  (php7 bootstrap) $app = new class extends \Silex\Application {
{
    public function forward($controller, array $path = array(), array $query = array()
    {
        if (!$this->booted) {
            throw new LogicException(sprintf('Method %s must be called from a controller.', __METHOD__));
        }

        $this->flush();

        $request = $this['request_stack']->getCurrentRequest();
        $path['_forwarded'] = $request->attributes;
        $path['_controller'] = $controller;
        $subRequest = $request->duplicate($query, null, $path);

        return $this['kernel']->handle($subRequest, HttpKernelInterface::SUB_REQUEST);
    }
}
```

Commits
-------

0a0e8af [WebProfilerBundle] show the http method in wdt if not 'GET'
4f020b5 [FrameworkBundle] Extends the RequestDataCollector
227ac77 [WebProfilerBundle] [FrameworkBundle] profile forward controller action
0a1b284 [WebProfiler] [HttpKernel] profile redirections
2016-03-31 11:32:58 +02:00
Ariel J. Birnbaum
ab8dc0c9d3 Optimize ReplaceAliasByActualDefinitionPass
Previous implementation passed over every alias and every definition, for every
alias (n*(n+m) runtime). New implementation passes once over all aliases and
once over all definitions (n+m).

Also removing needless "restart" logic --- it has no real effect in either case.
2016-03-31 11:29:03 +02:00
Fabien Potencier
facb21eed9 feature #18260 Add Inflector component (from StringUtil of PropertyAccess) (teohhanhui)
This PR was merged into the 3.1-dev branch.

Discussion
----------

Add Inflector component (from StringUtil of PropertyAccess)

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

As proposed by @dunglas here: https://github.com/symfony/symfony/issues/18166#issuecomment-196707518

This will help us fix #18166

Commits
-------

8abebf6 Add Inflector component (from StringUtil of PropertyAccess)
2016-03-31 10:46:45 +02:00
annesosensio
5fd054e282 [Process] use __METHOD__ where applicable 2016-03-31 10:39:43 +02:00
Nicolas Grekas
6ed73d56d9 Merge branch '3.0'
* 3.0:
  [Process] Fix stream_select priority when writing to stdin
  bumped Symfony version to 3.0.5
  updated VERSION for 3.0.4
  updated CHANGELOG for 3.0.4
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [Form] remove useless code in ChoiceType
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Process/Pipes/AbstractPipes.php
2016-03-31 10:13:34 +02:00
Nicolas Grekas
c3f0bfe36b Merge branch '2.8' into 3.0
* 2.8:
  [Process] Fix stream_select priority when writing to stdin
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [Form] remove useless code in ChoiceType
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
	src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
2016-03-31 10:11:51 +02:00
Nicolas Grekas
f7010ce180 Merge branch '2.7' into 2.8
* 2.7:
  [Process] Fix stream_select priority when writing to stdin
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [Form] remove useless code in ChoiceType
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/Form/Extension/Core/DataTransformer/NumberToLocalizedStringTransformer.php
2016-03-31 10:07:27 +02:00
Nicolas Grekas
2f2ce3e637 Merge branch '2.3' into 2.7
* 2.3:
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
2016-03-31 10:05:11 +02:00
Fabien Potencier
26c84dd85f feature #17458 Add strict image validation (Koc)
This PR was merged into the 3.1-dev branch.

Discussion
----------

Add strict image validation

| Q             | A
| ------------- | ---
| Bug fix?      | yes (current validator does not validates corrupted images)
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | not, but fail looks like not relates to this PR
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

getimagesize returns correct size for corrupted images, so I've added another check

Commits
-------

7b6a96e Add corrupted images validation
2016-03-31 09:41:07 +02:00
Teoh Han Hui
8abebf6417 Add Inflector component (from StringUtil of PropertyAccess) 2016-03-31 15:36:48 +08:00
Fabien Potencier
c61077c454 feature #18350 [Process] Accept Traversable input (nicolas-grekas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Process] Accept Traversable input

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

Commits
-------

b9782b7 [Process] Accept Traversable input
2016-03-31 09:35:54 +02:00
Fabien Potencier
93e09feeba feature #18135 [Security] Deprecate onAuthenticationSuccess() (weaverryan)
This PR was squashed before being merged into the 3.1-dev branch (closes #18135).

Discussion
----------

[Security] Deprecate onAuthenticationSuccess()

| Q             | A
| ------------- | ---
| Branch        | master
| Bug fix?      | yes
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | #18027
| License       | MIT
| Doc PR        | not yet - the existing feature is not currently documented

Because of the new `TargetPathTrait`, implementing `onAuthenticationSuccess` yourself is quite easy. I think we should just remove it. This also will fix #18027.

Thanks!

Commits
-------

c4ae80a [Security] Deprecate onAuthenticationSuccess()
2016-03-31 07:34:01 +02:00
Ryan Weaver
c4ae80a9e4 [Security] Deprecate onAuthenticationSuccess() 2016-03-31 07:33:59 +02:00
Konstantin.Myakshin
7b6a96e4f5 Add corrupted images validation 2016-03-31 00:26:49 +03:00