Commit Graph

15273 Commits

Author SHA1 Message Date
Christian Flothmann
25d39aa819 support egulias/email-validator 2.x 2016-06-23 14:45:27 +02:00
Christian Flothmann
120b35c410 [Routing] data type support for defaults
As pointed out in symfony/symfony-docs#4017, the XmlFileLoader was not
capable of defining array default values. Additionally, this commit
adds support for handling associative arrays, boolean, integer, float
and string data types.
2016-06-23 14:28:23 +02:00
Grégoire Pineau
078e27f139 [Workflow] Added initial set of files 2016-06-23 14:28:20 +02:00
Fabien Potencier
17d59a7c66 added the first more-or-less working version of the Workflow component 2016-06-23 14:28:15 +02:00
Fabien Potencier
9af416d096 feature #19151 [VarDumper] Add support for XmlReader objects (Taluu)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Add support for XmlReader objects

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

Commits
-------

3779ee4 [VarDumper] Add support for XmlReader objects
2016-06-23 13:55:51 +02:00
Fabien Potencier
43f9514db5 feature #18471 [Console] Add Lockable trait (geoffrey-brier)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Add Lockable trait

| 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        | none for the moment :)

Hi there,

Since the 2.6 the `LockHandler` class was added to ease concurrency problems. There was a nice post about [using it in your commands](http://symfony.com/blog/new-in-symfony-2-6-lockhandler).

From my humble experience, I find it a bit unpleasant/time consuming to always copy/paste the same code. So here is my proposal:

Before:

```php
class UpdateContentsCommand extends Command
{
    protected function configure()
    {
        // ...
    }

    protected function execute(InputInterface $input, OutputInterface $output)
    {
        // create the lock
        $lock = new LockHandler('update:contents');
        if (!$lock->lock()) {
            $output->writeln('The command is already running in another process.');

            return 0;
        }

      // Your code

        $lock->release();
    }
}
```

After:

```php
class MyCommand extends Command
{
    use LockableTrait;

    protected function execute(InputInterface $input, OutputInterface $output)
    {
         if (!$this->lock()) {
             // Here you can handle locking errors
         }
        // Your code
        // The lock release is still optionnal
         $this->release();
    }
}
```
In addition, you can optionally pass two arguments:
- a string argument to change the lock name
- a boolean argument to indicate if you want to wait until the requested lock is released

Commits
-------

b57a83f [Console] Add Lockable trait
2016-06-23 13:46:59 +02:00
Geoffrey Brier
b57a83fce6 [Console] Add Lockable trait 2016-06-23 13:42:36 +02:00
Robin Chalas
33402ea747 Add Yaml LintCommand
Add tests

Fix tests & YamlLintCommand help formatting

fabbot fixes

Use Generator to iterate over the filesystem

Move STDIN related code in a method
Use RecursiveIteratorIterator::LEAVES_ONLY rather than SELF_FIRST
Stop using the Finder component when available (Make findFiles() private)
Re-add FrameworkBundle YamlLintCommandTest
Use CommandTester::getStatusCode() rather than assign execute()

Re-add feature for bundle directories, Test it
2016-06-23 13:12:38 +02:00
Baptiste Clavié
3779ee4b31 [VarDumper] Add support for XmlReader objects 2016-06-23 11:26:38 +02:00
Jean Pasdeloup
b36fc32ea8 [Security] [Guard] Improve comment with working example 2016-06-23 09:37:24 +02:00
Fabien Potencier
e949d348b1 feature #19143 Response headers fix (fabpot)
This PR was merged into the 3.2-dev branch.

Discussion
----------

Response headers fix

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

To fix the inconsistency mentioned in #16171, I think the "best" solution would be to add `private` when cache-control is not set, which was the intention but was forgotten.

I propose to make the fix in 3.2 only as it might be a BC break.

Commits
-------

66afa01 [HttpFoundation] added private by default when setting Cache-Control to no-cache
2016-06-23 09:34:16 +02:00
Christian Flothmann
81a6d8ed88 explicitly forbid e-mail validator 2.0 or higher 2016-06-22 23:25:31 +02:00
Robin Chalas
a0b4ae724c
Reference changes that ease command testing in 3.2 2016-06-22 21:54:18 +02:00
Fabien Potencier
66afa01057 [HttpFoundation] added private by default when setting Cache-Control to no-cache 2016-06-22 15:19:50 +02:00
Fabien Potencier
e8901b1669 bug #19061 [FORM] fix post_max_size_message translation (alt. 2) (David Badura)
This PR was merged into the 2.7 branch.

Discussion
----------

[FORM] fix post_max_size_message translation (alt. 2)

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

Commits
-------

9d8a5e5 fix post_max_size_message translation
2016-06-22 13:59:59 +02:00
Steffen Roßkamp
f7669bedbf [Form] Add a DateInterval form type
Also add dateinterval widget to twig templates.
2016-06-22 13:52:09 +02:00
Sebastiaan Stok
a8f6f85748 Fixed SymfonyQuestionHelper multi-choice with defaults 2016-06-22 13:33:19 +02:00
Richard Quadling
3871e1a950 Differentiate between the first time a progress bar is displayed and subsequent times 2016-06-22 09:44:25 +01:00
Fabien Potencier
eaca0bb0fa bug #19138 [DomCrawler] No more exception on field name with strange format (guiled, fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

[DomCrawler] No more exception on field name with strange format

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

Commits
-------

e204913 finished previous commit
953a383 No more exception for malformed input name
2016-06-22 08:42:02 +02:00
Fabien Potencier
e204913a67 finished previous commit 2016-06-22 08:40:44 +02:00
guiled
953a3835a2 No more exception for malformed input name 2016-06-22 08:06:22 +02:00
David Badura
9d8a5e5a04 fix post_max_size_message translation 2016-06-21 22:32:24 +02:00
Fabien Potencier
f28eb9a617 bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Consider a violation even if the form is not submitted

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes (only for the behavior)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #11493
| License       | MIT
| Doc PR        |

Hey!

I'm currently implementing an API using the form component in order to validate the payload sent (in conjonction with the FOSRestBundle). Unfortunatelly, we dig into an issue about the PATCH request which don't map some of our validation rules to the form. Basically, the violations are lost in the middle of the process.

### Use case

We have an entity with the following fields "type", "image" & "video". The field "type"can be either "default", "image" or "video" and then accordingly we use the appropriate field (none for the "default" type, video for the "video" type and image for the "image" type. Then, in our form, we change the validation groups according to our entity type in order to make the "image" field mandatory if the type is "image" and the same for the video field if the type is "video".

### Current behavior

The current behavior (since 2.5) seems to not propages a violation to a form if this form is not submitted but in our use case, changing the field "type" via a PATCH request triggers some new validation which should be reported to end user (inform that a field (video or image) is missing in the PATCH request).

### Expected behavior

The current behavior was introduced in #10567 but IMO, this update is a bug as suggested by @webmozart in https://github.com/symfony/symfony/issues/11493#issuecomment-59549054 Instead, the form component should still map validation errors to the form even if the field was not submitted. If the initial data is not valid, then your initial data was buggy from the beginning but the form should not accept it and instead of silently ignoring the errors, end users should be informed and fix it.

WDYT?

Commits
-------

c483a0f [Form] Consider a violation even if the form is not submitted
2016-06-21 22:19:14 +02:00
Fabien Potencier
bbb75faa15 bug #19127 [Form] Add exception to FormRenderer about non-unique block names (enumag)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Add exception to FormRenderer about non-unique block names

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

Commits
-------

c6db6f3 [Form] Add exception to FormRenderer about non-unique block names
2016-06-21 22:02:08 +02:00
Ener-Getick
d17c1a9734 [DependencyInjection] Sort the CompilerPass by priority 2016-06-21 21:44:32 +02:00
Romain Neutron
ec19a527be bug #19118 [Process] Fix pipes cleaning on Windows (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] Fix pipes cleaning on Windows

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

Commits
-------

d54cd02 [Process] Fix pipes cleaning on Windows
2016-06-21 15:46:37 +02:00
Nicolas Grekas
d54cd02d06 [Process] Fix pipes cleaning on Windows 2016-06-21 14:37:54 +02:00
Iltar van der Berg
eb8c27e882 Avoid phpunit 5.4 warnings on getMock 2016-06-21 10:07:44 +02:00
Iltar van der Berg
b05014c2e9 Avoid phpunit 5.4 warnings on getMock 2016-06-21 09:59:55 +02:00
Jáchym Toušek
c6db6f3d50 [Form] Add exception to FormRenderer about non-unique block names 2016-06-21 09:39:01 +02:00
Fabien Potencier
a41f359e51 fixed CS 2016-06-21 08:43:40 +02:00
Fabien Potencier
0691506b1b Merge branch '3.1'
* 3.1:
  fixed CS
  fixed CS
  fixed CS
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  Mention generating absolute urls in UPGRADE files and CHANGELOG
  parse embedded mappings only if value is a string
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  [YAML] Fixed parsing problem with nested DateTime lists
  Fixed typo in PHPDoc
2016-06-21 08:41:01 +02:00
Fabien Potencier
a4ce063029 Revert "feature #18977 [PropertyAccess] Add missing arguments to PropertyAccess::createPropertyAccessor() (chalasr)"
This reverts commit 86eb7a3339, reversing
changes made to 856c9f6024.
2016-06-21 08:31:10 +02:00
Fabien Potencier
f2ee67feae Revert "minor #19030 [PropertyAccess] add missing argument PHPdoc (xabbuh)"
This reverts commit 3844fb982f, reversing
changes made to e188cd75b5.
2016-06-21 08:31:05 +02:00
Fabien Potencier
a39afd001f fixed CS 2016-06-21 08:06:14 +02:00
Fabien Potencier
9cbec2c4fa Merge branch '3.0' into 3.1
* 3.0:
  fixed CS
  fixed CS
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  Mention generating absolute urls in UPGRADE files and CHANGELOG
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  Fixed typo in PHPDoc
2016-06-21 07:59:09 +02:00
Fabien Potencier
be0b8f088f fixed CS 2016-06-21 07:58:59 +02:00
Fabien Potencier
9800cdd8f4 Merge branch '2.8' into 3.0
* 2.8:
  fixed CS
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  Mention generating absolute urls in UPGRADE files and CHANGELOG
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  Fixed typo in PHPDoc
2016-06-21 07:48:46 +02:00
Fabien Potencier
90151ef5c5 fixed CS 2016-06-21 07:43:49 +02:00
Fabien Potencier
548f3d0339 Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  Fixed typo in PHPDoc
2016-06-21 07:36:02 +02:00
Fabien Potencier
7cc3ca59d0 fixed CS 2016-06-20 18:47:20 +02:00
Fabien Potencier
8868e0e1df minor #19116 [Debug] fix resource type test on HHVM (xabbuh)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Debug] fix resource type test on HHVM

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

Commits
-------

2d03ee8 [Debug] fix resource type test on HHVM
2016-06-20 18:09:00 +02:00
Christian Flothmann
2d03ee807f [Debug] fix resource type test on HHVM 2016-06-20 17:51:36 +02:00
Fabien Potencier
a0cdcb0ffb bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Dont close the reponse stream in debug

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

Because it's `terminate`'s job to clean the state, not the `Response`'s,
and because the current behavior prevents getting any output on trailing errors on FPM especially.

Commits
-------

2fbc200 [HttpKernel] Dont close the output stream in debug
2016-06-20 13:19:36 +02:00
Fabien Potencier
693a832892 feature #19090 [Console] Add ConsoleLogger::hasErrored() (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Add ConsoleLogger::hasErrored()

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

So that it's easy to `exit(1)` whenever any messages have been logged at error levels.

Commits
-------

cfc578a [Console] Add ConsoleLogger::hasErrored()
2016-06-20 13:17:38 +02:00
Nicolas Grekas
2fbc2008e5 [HttpKernel] Dont close the output stream in debug 2016-06-20 10:21:56 +02:00
Fabien Potencier
85e5060fa1 [Console] simplified tests 2016-06-20 08:34:10 +02:00
Fabien Potencier
88cf87ea64 minor #19097 [Console] Test SymfonyStyle::ask() output (chalasr)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Test SymfonyStyle::ask() output

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

Now that we can test an interactive command that uses SymfonyStyle (after #18999), we should test their output.

Commits
-------

e870758 [Console] Test SymfonyStyle::ask() output
2016-06-20 06:58:14 +02:00
Fabien Potencier
9df08fac89 bug #19101 [Session] fix PDO transaction aborted under PostgreSQL (Tobion)
This PR was merged into the 2.7 branch.

Discussion
----------

[Session] fix PDO transaction aborted under PostgreSQL

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

Fixes the transactional concurrency error handling for PostgreSQL which does not allow to execute further queries in a transaction with an error.
Because of the loop, look at the diff with whitespace ignored to see the difference: https://github.com/symfony/symfony/pull/19101/files?w=1

Commits
-------

f8eefa0 [Session] fix PDO transaction aborted under PostgreSQL
2016-06-19 14:22:58 +02:00
Fabien Potencier
6a8a113fb9 bug #18501 [HttpFoundation] changed MERGE queries (hjkl)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpFoundation] changed MERGE queries

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

Changed the MERGE queries for Oracle and SQL Server to use question mark parameter markers so they work with emulation disabled or enabled - fixes #17284

Commits
-------

ebf3a2f Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
2016-06-19 12:25:18 +02:00
Fabien Potencier
41fd5a1f7d minor #19094 [Console] Use InputInterface inherited doc as possible (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Use InputInterface inherited doc as possible

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

In classes implementing `InputInterface`, the methods doc blocks are duplicated from the interface.
Sometimes descriptions are different from the interface's ones and, sometimes, the class doc is clearer. So I tried to keep always the most adapted one.

Commits
-------

b604be7 [Console] Use InputInterface inherited doc as possible
2016-06-19 12:24:22 +02:00
Christian Schmidt
fb10b33e8e [Debug] Do not quote numbers in stack trace 2016-06-18 22:40:40 +02:00
Tobias Schultze
7eab67fbb5 minor #19085 FormBuilderInterface: fix getForm() return type. (taueres)
This PR was merged into the 2.7 branch.

Discussion
----------

FormBuilderInterface: fix getForm() return type.

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

FormBuilderInterface->getForm() should depend on abstractions and
not implementations as a return type.

Commits
-------

3fa081c FormBuilderInterface: fix getForm() return type.
2016-06-18 22:20:36 +02:00
hjkl
ebf3a2ffc8 Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284 2016-06-18 20:15:19 +01:00
Tobias Schultze
f8eefa0748 [Session] fix PDO transaction aborted under PostgreSQL 2016-06-18 19:15:36 +02:00
Robin Chalas
b604be7084
[Console] Use InputInterface inherited doc as possible 2016-06-18 12:04:12 +02:00
Robin Chalas
e870758dae
[Console] Test SymfonyStyle::ask() output 2016-06-18 11:47:37 +02:00
Fabien Potencier
afed2f888d feature #19012 [Console] progress bar fix (TomasVotruba, fabpot)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] progress bar fix

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

This is #16490 where I've simplified the code as much as possible and added a test for the bug we're trying to fix.

The main change is the renaming of the `TerminalDimensionsProvider` to just `Terminal`. The new class can probably be useful to add more about the terminal.

Commits
-------

2f81247 switched to use COLUMNS and LINES env vars to change terminal dimensions
bf7a5c5 fixed logic
a589635 deprecated some Console Application methods
8f206c8 fixed CS, simplified code
b030c24 [Console] ProgressBar - adjust to the window width (static)
2016-06-17 19:52:18 +02:00
Fabien Potencier
40f4c57eb3 feature #19047 [Cache] Add tags based invalidation + TagAwareRedisAdapter (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Cache] Add tags based invalidation + TagAwareRedisAdapter

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

Commits
-------

19764af [Cache] Add tags based invalidation + TagAwareRedisAdapter
2016-06-17 19:46:12 +02:00
Fabien Potencier
2f81247005 switched to use COLUMNS and LINES env vars to change terminal dimensions 2016-06-17 19:36:07 +02:00
Fabien Potencier
bf7a5c58a9 fixed logic 2016-06-17 19:36:07 +02:00
Fabien Potencier
a589635643 deprecated some Console Application methods 2016-06-17 19:36:07 +02:00
Fabien Potencier
8f206c86d7 fixed CS, simplified code 2016-06-17 19:36:07 +02:00
Tomas Votruba
b030c24263 [Console] ProgressBar - adjust to the window width (static) 2016-06-17 19:36:07 +02:00
Nicolas Grekas
cfc578add1 [Console] Add ConsoleLogger::hasErrored() 2016-06-17 19:29:15 +02:00
Ener-Getick
2c3a7cc532
Deprecate using Form::isValid() with an unsubmitted form 2016-06-17 18:23:40 +02:00
Nicolas Grekas
19764af74f [Cache] Add tags based invalidation + TagAwareRedisAdapter 2016-06-17 17:55:45 +02:00
Zdeněk Drahoš
5f506d96ff Mention generating absolute urls in UPGRADE files and CHANGELOG 2016-06-17 16:58:54 +02:00
Christian Flothmann
0f47712f53 parse embedded mappings only if value is a string 2016-06-17 16:16:22 +02:00
Christian Flothmann
7475aa8a48 treat fragment after resolving query string params 2016-06-17 16:10:03 +02:00
Nicolas Grekas
86552ea2dc minor #19036 add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support (Haehnchen)
This PR was merged into the 2.7 branch.

Discussion
----------

add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support

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

In additional to #16965 PhpStorm supports `IteratorAggregate::getIterator` now. see https://blog.jetbrains.com/phpstorm/2016/06/phpstorm-2016-2-eap-162-844/

example
```
$collection  = new \Symfony\Component\Routing\RouteCollection();
foreach ($collection as $route) {
    $route->getHost();
}
```

Commits
-------

ede3556 add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
2016-06-17 15:03:05 +02:00
Daniel Espendiller
ede35568bf add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support 2016-06-17 14:42:34 +02:00
Sergio Santoro
3fa081cc71 FormBuilderInterface: fix getForm() return type.
FormBuilderInterface->getForm() should depend on abstractions and
not implementations as a return type.
2016-06-17 13:29:11 +02:00
Joschi Kuphal
4f13a76ce8 [YAML] Fixed parsing problem with nested DateTime lists 2016-06-17 09:25:22 +02:00
Fabien Potencier
6f05632bc2 bug #19029 [YAML] Fixed parsing problem with nested DateTime lists (jkphl)
This PR was squashed before being merged into the 3.2-dev branch (closes #19029).

Discussion
----------

[YAML] Fixed parsing problem with nested DateTime lists

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

___

Without this fix, DateTime-aware parsing of a YAML source containing nested lists of dates result in an error. Consider this:

```php
$data = ['date' => ['annivesary' => new \DateTime('now')]];
$yaml = Yaml::dump($data);
var_dump($yaml);

$parsed = Yaml::parse($yaml, Yaml::PARSE_DATETIME);
print_r($parsed);
```

Everything is fine, result is:

```
string(48) "date:
    annivesary: 2016-06-11T11:26:30+02:00
"
Array
(
    [date] => Array
        (
            [annivesary] => DateTime Object
                (
                    [date] => 2016-06-11 11:26:30.000000
                    [timezone_type] => 1
                    [timezone] => +02:00
                )

        )

)
```

But making the `anniversary` a list of dates

```php
$data = ['date' => ['annivesary' => [new \DateTime('now')]]];
$yaml = Yaml::dump($data);
var_dump($yaml);

$parsed = Yaml::parse($yaml, Yaml::PARSE_DATETIME);
print_r($parsed);
```

will result in:

```
string(50) "date:
    annivesary: [2016-06-11T12:00:05+02:00]
"
PHP Warning:  strpos() expects parameter 1 to be string, object given in [...]\vendor\symfony\yaml\Inline.php on line 382
PHP Catchable fatal error:  Object of class DateTime could not be converted to string in [...]\vendor\symfony\yaml\Inline.php on line 386
```

(I didn't capture the error messages with the most recent master branch, so line numbers differ somewhat)

Commits
-------

52384cf [YAML] Fixed parsing problem with nested DateTime lists
2016-06-16 21:29:32 +02:00
Joschi Kuphal
52384cf2e5 [YAML] Fixed parsing problem with nested DateTime lists 2016-06-16 21:29:29 +02:00
Thomas Landauer
9e7b3479dc Fixed typo in PHPDoc 2016-06-16 20:42:35 +02:00
Fabien Potencier
61e5ddc106 feature #12979 [Router] added appending of new optional document fragment (rodnaph)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Router] added appending of new optional document fragment

added a new optional parameter to the generate method for the document fragment. when specified this is appended to generated urls.

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

Commits
-------

6d79a56 [Routing] adds _fragment special option to url generation for document fragment
2016-06-16 18:09:07 +02:00
Fabien Potencier
4742962c74 feature #18710 [Console] Simplify simulation of user inputs in CommandTester (chalasr)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Simplify simulation of user inputs in CommandTester

| 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        | https://github.com/symfony/symfony-docs/pull/6623

After @javiereguiluz pointed it in #17470, I open this PR to simplify the simulation of user inputs for testing a Command.
It would be done by calling `CommandTester::setUserInputs()` with an array of inputs as argument, and so make the CommandTester creating an input stream from the inputs set by the developer, then call `QuestionHelper::setInputStream` and assign it to the helperSet of the command, sort as all is done automatically in one call.

Depends on #18999

Commits
-------

c7ba38a [Console] Set user inputs from CommandTester
2016-06-16 16:59:22 +02:00
Robin Chalas
0d6dc8efca Fix the missing colon in get/setInputStream deprecation warning 2016-06-16 11:23:07 +02:00
Nicolas Grekas
000595867a minor #19072 [Console] remove BC breaking argument (xabbuh)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] remove BC breaking argument

| 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/18999#discussion_r67304012
| License       | MIT
| Doc PR        |

Commits
-------

f574330 remove BC breaking argument
2016-06-16 11:20:08 +02:00
Christian Flothmann
f574330be4 remove BC breaking argument 2016-06-16 10:59:45 +02:00
Nicolas Grekas
a627bbac05 Merge branch '3.1'
* 3.1:
  Fix merge
2016-06-16 10:34:19 +02:00
Nicolas Grekas
33636c7330 Merge branch '3.0' into 3.1
* 3.0:
  Fix merge
2016-06-16 10:34:05 +02:00
Nicolas Grekas
22a1105f42 Fix merge 2016-06-16 10:33:40 +02:00
Nicolas Grekas
9a6bc4bc31 Merge branch '3.1'
* 3.1:
  Tweak merge
  update tests to use the new error assertion helper
  [ci] Upgrade to symfony/phpunit-bridge >=3.2@dev
  update tests to use the new error assertion helper

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
2016-06-16 10:32:17 +02:00
Nicolas Grekas
4a15e665ba minor #19067 [3.1] update tests to use the new error assertion helper (xabbuh)
This PR was merged into the 3.1 branch.

Discussion
----------

[3.1] update tests to use the new error assertion helper

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

Commits
-------

9c7512b update tests to use the new error assertion helper
2016-06-16 10:28:45 +02:00
Nicolas Grekas
aaa40390dc Merge branch '3.0' into 3.1
* 3.0:
  Tweak merge
  update tests to use the new error assertion helper
  [ci] Upgrade to symfony/phpunit-bridge >=3.2@dev
2016-06-16 10:27:44 +02:00
Nicolas Grekas
8da9a387d7 Tweak merge 2016-06-16 10:27:19 +02:00
Nicolas Grekas
bd39ce84b6 Merge branch '2.8' into 3.0
* 2.8:
  update tests to use the new error assertion helper
  [ci] Upgrade to symfony/phpunit-bridge >=3.2@dev

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
	src/Symfony/Component/Yaml/Tests/ParserTest.php
2016-06-16 10:25:06 +02:00
Nicolas Grekas
f8937bd8b8 minor #19066 [2.8] update tests to use the new error assertion helper (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

[2.8] update tests to use the new error assertion helper

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

Commits
-------

e5cf4d4 update tests to use the new error assertion helper
2016-06-16 10:19:53 +02:00
Christian Flothmann
e5cf4d424b update tests to use the new error assertion helper 2016-06-16 10:10:24 +02:00
Robin Chalas
c7ba38a7c2 [Console] Set user inputs from CommandTester
Rename getInputStream() to getStream(), taking inputs as argument

Make createStream static, typehint  as array
2016-06-16 09:44:16 +02:00
Fabien Potencier
9759a359f5 feature #18999 [Console] Centralize input stream in base Input class (chalasr)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Centralize input stream in base Input class

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

Actually we have two classes that have an `inputStream` property with its getter+setter:
the QuestionHelper ('question' helper) and the SymfonyQuestionHelper (used via SymfonyStyle, that inherits the inputStream from the QuestionHelper class).

This situation makes command testing really hard.
ATM we can't test a command that uses `SymfonyStyle::ask` without ugly hacks, and we can't find a generic way to set the inputs passed to a command from the CommandTester, as it need to be done on a specific helper that may not be the one used by the command (SymfonyStyle case).

What I propose here is to add a `stream` property (and its getter+setter) to the abstract `Symfony\Component\Console\Input\Input` class.

For now I just made the two helpers setting their `inputStream` from `Input::getStream`, as both QuestionHelper and SymfonyQuestionHelper classes have an `ask` method that takes the command Input as argument.
In a next time (4.0), we could remove the `getInputStream` and `setInputStream` methods from the QuestionHelper class (this only deprecates them in favor of Input `setStream` and `getStream`).

This would close PR #18902 (trying to make interactive command testing with SymfonyStyle easier).
This would also make PR #18710 widely better by setting the input stream in a generic way (working for both helpers without caring about if they are used and which one is used).

Please give me your opinions.

Commits
-------

54d3d63 Centralize input stream in base Input class
2016-06-16 08:25:44 +02:00
Christian Flothmann
9c7512bf39 update tests to use the new error assertion helper 2016-06-16 07:34:55 +02:00
Nicolas Grekas
3a3801a07c Merge branch '3.1'
* 3.1:
  [TwigBridge] Add missing type hint to TwigRenderer
  [HttpFoundation] Fix UPSERT for PgSql >= 9.5
  [Form] fixed DateTime transformers
  [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't
  bumped Symfony version to 3.1.2
  updated VERSION for 3.1.1
  updated CHANGELOG for 3.1.1
  [Form] fixed EntityType test with query_builder option

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
2016-06-16 07:23:20 +02:00
Nicolas Grekas
969e3b1ded Merge branch '3.0' into 3.1
* 3.0:
  [TwigBridge] Add missing type hint to TwigRenderer
  [HttpFoundation] Fix UPSERT for PgSql >= 9.5
  [Form] fixed DateTime transformers
  [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't
  [Form] fixed EntityType test with query_builder option

Conflicts:
	src/Symfony/Component/HttpFoundation/Cookie.php
2016-06-16 07:20:30 +02:00
Nicolas Grekas
d2786ad21a Merge branch '2.8' into 3.0
* 2.8:
  [HttpFoundation] Fix UPSERT for PgSql >= 9.5
  [Form] fixed DateTime transformers
  [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't
  [Form] fixed EntityType test with query_builder option

Conflicts:
	src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToStringTransformer.php
	src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToTimestampTransformer.php
2016-06-16 07:18:30 +02:00
Nicolas Grekas
8060715778 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Fix UPSERT for PgSql >= 9.5
  [Form] fixed DateTime transformers
  [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't
2016-06-16 07:02:45 +02:00
Fabien Potencier
e9e0975f22 feature #19060 [ExpressionLanguage] Add a way to hook on each node when dumping the AST (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[ExpressionLanguage] Add a way to hook on each node when dumping the AST

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

This is an iteration over #19013 to allow writing dumpers that can decorate dumps (e.g. add HTML tags based on each node type to do syntax highlighting).

Commits
-------

66d23db [ExpressionLanguage] Add a way to hook on each node when dumping the AST
2016-06-15 18:22:57 +02:00