Commit Graph

6899 Commits

Author SHA1 Message Date
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
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
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
Charles Sarrazin
29e3d389e5 Added default service name for the Security component's Ldap providers 2016-03-31 18:22:22 +02:00
Fabien Potencier
8acc6010ad made test clearer 2016-03-31 11:55:22 +02:00
Fabien Potencier
f76e99b9f4 bug #18320 [FrameworkBundle] Fix Templating Engine autowiring (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #18320).

Discussion
----------

[FrameworkBundle] Fix Templating Engine autowiring

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

Commits
-------

c4ccfac [FrameworkBundle] Fix Templating Engine autowiring
2016-03-31 11:54:22 +02:00
Kévin Dunglas
c4ccfac047 [FrameworkBundle] Fix Templating Engine autowiring 2016-03-31 11:54:21 +02:00
Fabien Potencier
e4816def29 bug #18347 Fixed the styles of the Symfony icon in the web debug toolbar (javiereguiluz)
This PR was merged into the 2.8 branch.

Discussion
----------

Fixed the styles of the Symfony icon in the web debug toolbar

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

### Before

![symfony_icon_before](https://cloud.githubusercontent.com/assets/73419/14114615/d63240fc-f5d7-11e5-9cd2-b0a67077dbe7.png)

### After

![symfony_icon_after](https://cloud.githubusercontent.com/assets/73419/14114617/d95e7cc8-f5d7-11e5-8ff3-6e706b8c5de8.png)

---

@WhiteEagle88 the change from `24` to `40` was made in [this commit](d120c08f8b) of yours to fix some problems with Microsoft Edge browser. Could you please check if this pull request breaks anything for you? Thanks!

Commits
-------

ddc8d4e Fixed the styles of the Symfony icon in the web debug toolbar
2016-03-31 11:51:31 +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
Jules Pietri
dfe4f5308a [FrameworkBundle] Deprecated form types as services 2016-03-30 19:13:54 +02:00
Jules Pietri
0a0e8afa09 [WebProfilerBundle] show the http method in wdt if not 'GET'
When the request method is different from 'GET', the wdt add a
hint before the route name in the request panel.
2016-03-30 19:04:14 +02:00
Jules Pietri
4f020b5686 [FrameworkBundle] Extends the RequestDataCollector
Moves the logic of collect controller data while forwarding
in the framework bundle.
2016-03-30 19:02:53 +02:00
Jules Pietri
227ac77f11 [WebProfilerBundle] [FrameworkBundle] profile forward controller action
closes #14358

The `Symfony\Bundle\FrameworkBundle\Controller\Controller::forward()`
now passes request attributes to its sub request, so when the profiler
will profile the sub request it will add its token to its hold by
reference parent request attributes.

The profiler main profiler layout displays a shortcut to the forwarded
sub request profile which is actually responsible for returning the
present response.

The web debug toolbar shows a notifying icon, meaning a shortcut to a
forwarded profile is available in the toolbar request panel.
2016-03-30 19:02:38 +02:00
Jules Pietri
0a1b2841f7 [WebProfiler] [HttpKernel] profile redirections
closes #17501.

The profiler stores the current request attributes in a
current session when a `RedirectionResponse` is returned.
So the next request profile will inherit the previous request
attributes.

The main profiler layout displays a shortcut to a previous
redirection profile, along with some useful informations.

The web debug toolbar shows a notifying icon, meaning a shortcut
to a redirection profile is available in the request toolbar panel.
2016-03-30 19:02:29 +02:00
Fabien Potencier
86eee064dd Merge branch '3.0'
* 3.0:
  [ci] Get ICU/intl from github instead of nebm.ist.utl.pt/~glopes
  [Debug] Fix case sensitivity checks
  [Debug] Fix handling of php7 throwables
  fix high deps tests
  fix testing deprecation messages
  [Process] remove dead code
  [WebProfilerBundle] Add missing use statement.
  [ClassLoader] Fix storing not-found classes in APC cache
  [Form] cs fixes in date types
  [phpunit] disable prophecy
2016-03-30 12:41:47 +02:00
Fabien Potencier
4e17cb2ecb Merge branch '2.8' into 3.0
* 2.8:
  [ci] Get ICU/intl from github instead of nebm.ist.utl.pt/~glopes
  [Debug] Fix case sensitivity checks
  [Debug] Fix handling of php7 throwables
  fix high deps tests
  fix testing deprecation messages
  [Process] remove dead code
  [WebProfilerBundle] Add missing use statement.
  [ClassLoader] Fix storing not-found classes in APC cache
  [Form] cs fixes in date types
  [phpunit] disable prophecy
2016-03-30 12:41:14 +02:00
Fabien Potencier
8ca43b0760 Merge branch '2.7' into 2.8
* 2.7:
  [ci] Get ICU/intl from github instead of nebm.ist.utl.pt/~glopes
  [Debug] Fix case sensitivity checks
  [Debug] Fix handling of php7 throwables
  fix high deps tests
  [Process] remove dead code
  [WebProfilerBundle] Add missing use statement.
  [ClassLoader] Fix storing not-found classes in APC cache
  [Form] cs fixes in date types
  [phpunit] disable prophecy
2016-03-30 12:37:34 +02:00
Fabien Potencier
850f2188a8 minor #18296 [3.1] fix testing deprecation messages (xabbuh)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[3.1] fix testing deprecation messages

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

* always restore the previous error handler
* throw `LogicExcetion` when unexpected error type is triggered

Commits
-------

0df544f fix testing deprecation messages
2016-03-30 12:28:54 +02:00
Christian Flothmann
aa4dd4fcf0 fix high deps tests 2016-03-29 22:47:33 +02:00
Christian Flothmann
0df544ff4c fix testing deprecation messages
* always restore the previous error handler
* throw `LogicExcetion` when unexpected error type is triggered
2016-03-29 21:03:24 +02:00
Javier Eguiluz
ddc8d4ede2 Fixed the styles of the Symfony icon in the web debug toolbar 2016-03-29 17:56:26 +02:00
Cameron Porter
0d31c3e9cb [WebProfilerBundle] Add missing use statement.
Request is needed in RouterController::getTraces to be able to create a request.
2016-03-28 23:46:00 -05:00
Fabien Potencier
f4c998876e Revert "bug #18275 [Form] Fix BC break introduced in #14403 (HeahDude)"
This reverts commit 56fa7989a8, reversing
changes made to dcc3fce855.
2016-03-27 12:25:16 +02:00
Fabien Potencier
37a3a301bc Merge branch '2.8' into 3.0
* 2.8:
  improved comment
  [FileSystem] Add support for Google App Engine.
  [2.8] fix mocks
  [Form] Fix BC break introduced in #14403
2016-03-27 12:24:39 +02:00
Fabien Potencier
56fa7989a8 bug #18275 [Form] Fix BC break introduced in #14403 (HeahDude)
This PR was merged into the 2.8 branch.

Discussion
----------

[Form] Fix BC break introduced in #14403

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

Commits
-------

5f48c6a [Form] Fix BC break introduced in #14403
2016-03-27 12:21:58 +02:00
Christian Flothmann
7dff706da1 [2.8] fix mocks 2016-03-27 11:27:49 +02:00
Jules Pietri
5f48c6ac9a [Form] Fix BC break introduced in #14403 2016-03-25 19:30:27 +01:00
Fabien Potencier
f9b0aaa488 bug #18289 [FrameworkBundle] Return the invokable service if its name is the class name (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #18289).

Discussion
----------

[FrameworkBundle] Return the invokable service if its name is the class name

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

 if a service is invokable and has the same name than its class name, the controller resolver of FrameworkBundle doesn't retrieve the service and tries to construct a new instance of the class instead.

This is a very rare edge case, but this fix is useful for dunglas/DunglasActionBundle#36: referencing auto-registered controllers following the ADR style in YAML and XML routing files will be more intuitive.

Currently: `defaults:  { _controller: 'Your\Action\FQN:__invoke' }`, after this fix: `defaults:  { _controller: 'Your\Action\FQN' }`.

This PR also fix a currently useless test.

Commits
-------

70b9309 [FrameworkBundle] Return the invokable service if its name is the class name
2016-03-25 18:28:09 +01:00
Kévin Dunglas
70b9309b79 [FrameworkBundle] Return the invokable service if its name is the class name 2016-03-25 18:28:04 +01:00
Fabien Potencier
3c75c48838 feature #18242 [FrameworkBundle][TwigBundle] Make EngineInterface autowirable (dunglas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[FrameworkBundle][TwigBundle] Make EngineInterface autowirable

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

Commits
-------

26ed582 [FrameworkBundle][TwigBundle] Make EngineInterface autowirable
2016-03-25 17:49:43 +01:00
Tobias Schultze
3598105da9 Merge branch '3.0' 2016-03-25 02:52:00 +01:00
Tobias Schultze
fe36f04889 Merge branch '2.8' into 3.0 2016-03-25 02:41:20 +01:00
Tobias Schultze
a8843132b8 Merge branch '2.7' into 2.8 2016-03-25 02:40:30 +01:00
Iltar van der Berg
9fea1ee4f4 Removed unused variables 2016-03-24 12:33:34 +01:00
Christian Flothmann
243e59c108 Merge branch '3.0'
* 3.0:
  fix controller tests
  move test methods to test case class
2016-03-23 21:25:59 +01:00
Christian Flothmann
fb963d27c9 fix controller tests
Add missing public method stubs to `TestController` (all methods in the
base `Controller` class from the FrameworkBundle are `protected` since
Symfony 3.0).
2016-03-23 21:13:13 +01:00
Christian Flothmann
239d546db3 Merge branch '2.8' into 3.0
* 2.8:
  move test methods to test case class
2016-03-23 21:03:51 +01:00
Christian Flothmann
d2b0ebc941 Merge branch '2.7' into 2.8
* 2.7:
  move test methods to test case class
2016-03-23 20:59:19 +01:00
Christian Flothmann
81886530c7 move test methods to test case class 2016-03-23 19:17:25 +01:00
Fabien Potencier
434a2f51e2 feature #18211 [Security] Use auth trust resolver to determine anonymous in ContextListener (WouterJ)
This PR was squashed before being merged into the 3.1-dev branch (closes #18211).

Discussion
----------

[Security] Use auth trust resolver to determine anonymous in ContextListener

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

There is a nice class in Symfony that is used to check whether a token is anonymously: `AuthenticationTrustResolver`. However, its logic was still hard coded in the `ContextListener`, making it impossible to customize it (e.g. using another anonymous token class). I think it makes lots of sense to use the dedicated class.

Commits
-------

ab5578e [Security] Use auth trust resolver to determine anonymous in ContextListener
2016-03-23 10:01:36 -07:00
WouterJ
ab5578e5ac [Security] Use auth trust resolver to determine anonymous in ContextListener 2016-03-23 10:01:34 -07:00
Nicolas Grekas
d53874b747 Merge branch '3.0'
* 3.0: (22 commits)
  Fix backport
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
  [Bridge\PhpUnit] Workaround old phpunit bug, no colors in weak mode, add tests
  [PropertyAccess] Fix isPropertyWritable not using the reflection cache
  [PropertyAccess] Backport fixes from 2.7
  [FrameworkBundle][2.8] Add tests for the Controller class
  [DependencyInjection] Update changelog
  Added WebProfiler toolbar ajax panel table layout css.
  [Validator] use correct term for a property in docblock (not "option")
  [Routing] small refactoring for scheme requirement
  [PropertyAccess] Remove most ref mismatches to improve perf
  [PropertyInfo] Support Doctrine custom mapping type in DoctrineExtractor
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  [Process] fix docblock syntax
  use the clock mock for progress indicator tests
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class
  ...

Conflicts:
	src/Symfony/Bridge/PhpUnit/SymfonyTestsListener.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
2016-03-23 14:33:04 +01:00
Nicolas Grekas
3c40825202 Merge branch '2.8' into 3.0
* 2.8: (22 commits)
  Fix backport
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
  [Bridge\PhpUnit] Workaround old phpunit bug, no colors in weak mode, add tests
  [PropertyAccess] Fix isPropertyWritable not using the reflection cache
  [PropertyAccess] Backport fixes from 2.7
  [FrameworkBundle][2.8] Add tests for the Controller class
  [DependencyInjection] Update changelog
  Added WebProfiler toolbar ajax panel table layout css.
  [Validator] use correct term for a property in docblock (not "option")
  [Routing] small refactoring for scheme requirement
  [PropertyAccess] Remove most ref mismatches to improve perf
  [PropertyInfo] Support Doctrine custom mapping type in DoctrineExtractor
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  [Process] fix docblock syntax
  use the clock mock for progress indicator tests
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class
  ...

Conflicts:
	.travis.yml
	composer.json
	src/Symfony/Bridge/PhpUnit/DeprecationErrorHandler.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
2016-03-23 14:23:25 +01:00
Nicolas Grekas
42815018ed Merge branch '2.7' into 2.8
* 2.7:
  Fix backport
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
  [Bridge\PhpUnit] Workaround old phpunit bug, no colors in weak mode, add tests
  [PropertyAccess] Fix isPropertyWritable not using the reflection cache
  [PropertyAccess] Backport fixes from 2.7
  [Validator] use correct term for a property in docblock (not "option")
  [Routing] small refactoring for scheme requirement
  [PropertyAccess] Remove most ref mismatches to improve perf
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  [Process] fix docblock syntax
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class
  [FrameworkBundle] Add tests for the Controller class
  [Process] getIncrementalOutput should work without calling getOutput

Conflicts:
	src/Symfony/Bridge/PhpUnit/DeprecationErrorHandler.php
	src/Symfony/Bridge/PhpUnit/TextUI/Command.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
2016-03-23 14:11:46 +01:00
Nicolas Grekas
86c0a17721 Merge branch '2.3' into 2.7
* 2.3:
  [Validator] use correct term for a property in docblock (not "option")
  [PropertyAccess] Remove most ref mismatches to improve perf
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php
	src/Symfony/Component/PropertyAccess/PropertyPath.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
	src/Symfony/Component/Validator/Constraints/EmailValidator.php
2016-03-22 09:55:46 +01:00
Fabien Potencier
dd7e05dd14 minor #18206 [FrameworkBundle][2.8] Add tests for the Controller class (dunglas)
This PR was squashed before being merged into the 2.8 branch (closes #18206).

Discussion
----------

[FrameworkBundle][2.8] Add tests for the Controller class

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

Backport tests of #18193 to the `abstract` Controller.

Commits
-------

5ee9f93 [FrameworkBundle][2.8] Add tests for the Controller class
2016-03-21 06:51:25 -07:00
Kévin Dunglas
5ee9f933bb [FrameworkBundle][2.8] Add tests for the Controller class 2016-03-21 06:51:23 -07:00
Kévin Dunglas
26ed5820d1 [FrameworkBundle][TwigBundle] Make EngineInterface autowirable 2016-03-20 21:44:43 +01:00