Commit Graph

18411 Commits

Author SHA1 Message Date
Fabien Potencier
1e88b35380 Merge branch '3.3' into 3.4
* 3.3:
  [FrameworkBundle] Set default public directory on install assets
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  disable inlining deprecated services
  [Cache] add constructor docblocks for clarity
  [WebServerBundle] allowed public/ root directory to be auto-discovered along side web/
  [WebServerBundle] remove duplicate code
  [SecurityBundle] Clarify deprecation in UserPasswordEncoderCommand::getContainer
  [Cache] add constructor docblocks for clarity
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:07:19 +02:00
Fabien Potencier
649e2cd8bb Merge branch '3.2' into 3.3
* 3.2:
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  disable inlining deprecated services
  [Cache] add constructor docblocks for clarity
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:07:10 +02:00
Fabien Potencier
d3ca5083bf Merge branch '2.8' into 3.2
* 2.8:
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  disable inlining deprecated services
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:04:01 +02:00
Fabien Potencier
f49cc11021 Merge branch '2.7' into 2.8
* 2.7:
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:02:19 +02:00
Fabien Potencier
2fa948d328 minor #23533 [Console] Application is not responsible for setting the name of lazy commands (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console] Application is not responsible for setting the name of lazy commands

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

Fixes `all` not calling `get()` for lazy commands and stop setting the command name from Application (the command loader is responsible for returning valid commands).

Commits
-------

f25a8b5c41 Fix lazy commands registration
2017-07-17 14:48:33 +02:00
Robin Chalas
f25a8b5c41 Fix lazy commands registration 2017-07-17 14:21:21 +02:00
Fabien Potencier
80efd8f950 minor #23505 [Cache] add constructor docblocks for clarity (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Cache] add constructor docblocks for clarity

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

Commits
-------

d1ce5322a6 [Cache] add constructor docblocks for clarity
2017-07-17 14:07:22 +02:00
Fabien Potencier
559ccb2c66 security #23507 [Security] validate empty passwords again (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Security] validate empty passwords again

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

It looks like this part of #23341 causes serious security issues for some users who rely on the validator to also compare the empty string with their user's password (see for example https://github.com/symfony/symfony/pull/23341#issuecomment-315341226). Thus I suggest to revert this part of #23341.

Commits
-------

878198cefa [Security] validate empty passwords again
2017-07-17 12:54:11 +02:00
Issei.M
b5b8c15831 [Security] Fix wrong term in UserProviderInterface 2017-07-17 12:41:13 +02:00
Fabien Potencier
aa27974920 minor #23517 [Profiler][Validator] ValidatorDataCollector: use new DataCollector::getCasters() method (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[Profiler][Validator] ValidatorDataCollector: use new DataCollector::getCasters() method

| 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 | https://github.com/symfony/symfony/pull/23465#discussion_r126382240 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

~~First commit targets 3.3; see https://github.com/symfony/symfony/pull/23516.~~

I didn't re-used the `ConstraintViolationInterface` caster used in the form collector, as it's the purpose of the validator collector to show the constraints data.

Commits
-------

c725a700cf [Profiler][Validator] ValidatorDataCollector: use new DataCollector::getCasters() method
2017-07-17 12:35:31 +02:00
Fabien Potencier
a6232a4eef feature #23515 [VarDumper] Added setMinDepth to VarCloner (james-johnston-thumbtack)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] Added setMinDepth to VarCloner

This new function allows VarCloner users to specify a minimum tree
depth that must be fully explored before we start limiting the number of
cloned items via the existing setMaxItems functionality.

It’s useful for dumping arguments from a backtrace to ensure some
minimum level of detail, while keeping a very low setMaxItems value to
ensure fast performance at the deeper levels.

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| 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 | none
| License       | MIT
| Doc PR        | symfony/symfony-docs#8155 <!--highly recommended for new features-->

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

Commits
-------

d6534f5cfc [VarDumper] Added setMinDepth to VarCloner
2017-07-17 12:31:40 +02:00
Fabien Potencier
0100ca145d minor #23452 [DI] Remove irrelevant comment from container (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] Remove irrelevant comment from container

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

Spotted in #22811

Commits
-------

595a225a0f [DI] Remove irrelevant comment from container
2017-07-17 12:28:17 +02:00
Jonathan Vollebregt
5508a00e74 [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content 2017-07-17 12:22:37 +02:00
Alessandro Chitolina
6ab8ca0d36
disable inlining deprecated services 2017-07-17 11:57:18 +02:00
Gregor Harlan
b2c0dc3901 [Stopwatch] Fix precision for root section 2017-07-17 09:33:44 +02:00
Christian Flothmann
d1ce5322a6 [Cache] add constructor docblocks for clarity 2017-07-17 08:54:27 +02:00
Maxime Steinhausser
c725a700cf [Profiler][Validator] ValidatorDataCollector: use new DataCollector::getCasters() method 2017-07-15 10:55:31 +02:00
Nicolas Grekas
b24a338f71 Merge branch '3.3' into 3.4
* 3.3:
  [Profiler] Fix data collector getCasters() call
  remove symfony/process suggestion
  [DI] Remove unused dynamic property
  [Process] Fixed issue between process builder and exec
  non-conflicting anonymous service ids across files
2017-07-15 10:52:56 +02:00
Nicolas Grekas
de1143ba28 minor #23516 [Profiler] Fix data collector getCasters() call (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[Profiler] Fix data collector getCasters() call

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

Relates to https://github.com/symfony/symfony/pull/23465. Calling `DataCollector::getCasters()` using self results into overridden methods in child classes never been called.

Also removes an unused property.

Commits
-------

34e7094 [Profiler] Fix data collector getCasters() call
2017-07-15 10:52:36 +02:00
Maxime Steinhausser
34e7094d3d [Profiler] Fix data collector getCasters() call 2017-07-15 09:52:13 +02:00
James Johnston
d6534f5cfc [VarDumper] Added setMinDepth to VarCloner
This new function allows VarCloner users to specify a minimum tree
depth that must be fully explored before we start limiting the number of
cloned items via the existing setMaxItems functionality.

It’s useful for dumping arguments from a backtrace to ensure some
minimum level of detail, while keeping a very low setMaxItems value to
ensure fast performance.
2017-07-15 00:44:49 -07:00
Kévin Dunglas
6de81a7756
[DI] Remove unused dynamic property 2017-07-14 23:11:01 +02:00
Christian Flothmann
813a5377e1 [Cache] add constructor docblocks for clarity 2017-07-14 16:39:18 +02:00
Christian Flothmann
878198cefa [Security] validate empty passwords again 2017-07-14 16:25:02 +02:00
Grégoire Pineau
8cd1a2d527 [Process] Fixed issue between process builder and exec
refs #23495
2017-07-13 15:05:09 +02:00
Christian Flothmann
8289ca6d1a non-conflicting anonymous service ids across files 2017-07-12 20:52:55 +02:00
Roland Franssen
c4b6066c9f [DI] Check privates before resolving alias in Container::initialized 2017-07-12 20:41:02 +02:00
Nicolas Grekas
c9371808f6 Merge branch '3.3' into 3.4
* 3.3:
  fix merge
  fix merge
2017-07-12 16:42:11 +02:00
Nicolas Grekas
8e6accc4d0 fix merge 2017-07-12 16:41:59 +02:00
Nicolas Grekas
d09aeaf0fd Merge branch '3.2' into 3.3
* 3.2:
  fix merge
2017-07-12 16:40:39 +02:00
Nicolas Grekas
2b2c0b7c97 fix merge 2017-07-12 16:37:06 +02:00
Nicolas Grekas
5f91f74f4d feature #23404 [Serializer] AbstractObjectNormalizer: Allow to disable type enforcement (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[Serializer] AbstractObjectNormalizer: Allow to disable type enforcement

| 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 (failure unrelated)
| Fixed tickets | N/A <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

This allows to denormalize simple DTOs with public properties using the property-info component and the `ObjectNormalizer`. The raised exception is not really useful in such cases, as it cannot be easily handled gracefully to build a proper violation response (too generic and no real hint on the complete attribute path for instance).
Instead, I use the validator component to validate my DTOs and the properties' types, get a proper violation list, and build a response from it.

I wasn't really inspired for the `DISABLE_TYPE_ENFORCEMENT` name.

Commits
-------

959ac2a [Serializer] AbstractObjectNormalizer: Allow to disable type enforcement
2017-07-12 16:21:35 +02:00
Nicolas Grekas
4324804357 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Process] Fix parsing args on Windows
  [HttpKernel][VarDumper] Truncate profiler data & optim perf
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 15:09:21 +02:00
Nicolas Grekas
6b5d35f058 Merge branch '3.2' into 3.3
* 3.2:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 15:03:20 +02:00
Nicolas Grekas
e51c1a5658 Merge branch '2.8' into 3.2
* 2.8:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 15:02:55 +02:00
Nicolas Grekas
0c6096fc32 Merge branch '2.7' into 2.8
* 2.7:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 14:59:33 +02:00
Nicolas Grekas
ab8ac13dcf feature #22576 [Validator] Allow to use a property path to get value to compare in comparison constraints (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] Allow to use a property path to get value to compare in comparison constraints

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

So we can simply declare something like:

```php
class Activity
{
    /**
     * @var \DateTime
     *
     * @Assert\DateTime()
     */
    private $startDate;

    /**
     * @var \DateTime
     *
     * @Assert\DateTime()
     * @Assert\GreaterThan(propertyPath="startDate")
     */
    private $endDate;

    // [...]

    public function getStartDate(): \DateTime
    {
        return $this->startDate;
    }

    public function getEndDate(): \DateTime
    {
        return $this->startDate;
    }
}
```

Of course, this is actually already possible by using an `Expression` constraint (or a callable), but it feels more natural to me to use proper comparison constraints for this.

Commits
-------

07c5aa6 [Validator] Allow to use a property path to get value to compare in comparison constraints
2017-07-12 14:11:37 +02:00
Nicolas Grekas
87a6845b4d bug #23468 [DI] Handle root namespace in service definitions (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #23468).

Discussion
----------

[DI] Handle root namespace in service definitions

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

Fixes

```
Cannot dump definition because of invalid class name ('\\stdClass')
```

for

```yaml
services:
    foo: {class: '\stdClass' }
```

`ContainerBuilder` allows it, so `PhpDumper` should as well.

Commits
-------

05170c8 [DI] Handle root namespace in service definitions
2017-07-12 13:53:19 +02:00
Roland Franssen
05170c84a2 [DI] Handle root namespace in service definitions 2017-07-12 13:53:12 +02:00
Robin Chalas
7f97519624 Add support for command lazy-loading 2017-07-12 11:59:19 +02:00
Nicolas Grekas
e659ec175f bug #23477 [Process] Fix parsing args on Windows (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[Process] Fix parsing args on Windows

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

Commits
-------

8826da1 [Process] Fix parsing args on Windows
2017-07-12 08:48:08 +02:00
Nicolas Grekas
c2a6a6e9b5 bug #23256 [Security] Fix authentication.failure event not dispatched on AccountStatusException (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[Security] Fix authentication.failure event not dispatched on AccountStatusException

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

Authentication fails if the user exists but its account is disabled/expired/locked, the failure event should be dispatched in this case, so that you can hook into as for any authentication exception.

Commits
-------

64c2efd [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 08:41:53 +02:00
Javier Eguiluz
025dfff675 Use rawurlencode() to transform the Cookie into a string 2017-07-11 16:37:17 +02:00
Nicolas Grekas
66ead2e972 minor #23476 [VarDumper] Test ReflectionCaster excluding verbosity (maidmaid)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] Test ReflectionCaster excluding verbosity

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

Cover better ``ReflectionCaster`` in tests thanks to ``EXCLUDE_*`` filter which was added in https://github.com/symfony/symfony/pull/22588.

Commits
-------

e535089 Add exculde verbosity test
2017-07-11 16:36:03 +02:00
Fabien Potencier
f9d73b902d feature #22176 [DI] Allow imports in string format for YAML (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Allow imports in string format for YAML

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

I see no real reasons why this shouldnt be allowed..

Before

```yml
imports:
    - { resource: config.yml }
```

After

```yml
imports:
    - config.yml
```

Commits
-------

632e934cfa [DI] Allow imports in string format for YAML
2017-07-11 15:58:08 +02:00
Nicolas Grekas
050d686096 feature #23295 [Security] Lazy load user providers (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[Security] Lazy load user providers

| 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

Commits
-------

d7914a6 [Security] Lazy load user providers
2017-07-11 15:48:06 +02:00
Nicolas Grekas
8826da1c81 [Process] Fix parsing args on Windows 2017-07-11 15:19:03 +02:00
Dany Maillard
e53508986a Add exculde verbosity test 2017-07-11 11:21:44 +02:00
Nicolas Grekas
2b3afd2683 bug #23465 [HttpKernel][VarDumper] Truncate profiler data & optim perf (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel][VarDumper] Truncate profiler data & optim perf

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #23415, #21547 and hopefully #23110 and #23175
| License       | MIT
| Doc PR        | -

Commits
-------

754d3a7 [HttpKernel][VarDumper] Truncate profiler data & optim perf
2017-07-11 11:17:07 +02:00
Nicolas Grekas
bd30a27805 minor #23470 [VarDumper] Test ExceptionCaster excluding verbosity (maidmaid)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] Test ExceptionCaster excluding verbosity

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

Cover better ``ExceptionCaster`` in tests thanks to filter which was added in https://github.com/symfony/symfony/pull/22588.

Commits
-------

85766c9 Add exculde verbosity test
2017-07-11 11:12:37 +02:00