Commit Graph

13972 Commits

Author SHA1 Message Date
Nicolas Grekas
073a1dae13 [Validator] Fix init of YamlFileLoader::$classes for empty files 2016-12-08 13:07:24 +01:00
Maxime STEINHAUSSER
1ed9335e88 [Config] Do not skip YamlReferenceDumperTest entirely 2016-12-08 11:59:24 +01:00
Maxime STEINHAUSSER
685a9b9d9a [Config] Fix YamlReferenceDumper extra space 2016-12-08 11:42:33 +01:00
Fabien Potencier
7a07c1b464 minor #20800 [Security] fix the docblock in regard to the role argument (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Security] fix the docblock in regard to the role argument

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

Makes the docblocks consistent with the `UserInterface` since #17525.

Commits
-------

4e563ae fix the docblock in regard to the role argument
2016-12-07 09:06:36 +01:00
Christian Flothmann
4e563aee02 fix the docblock in regard to the role argument 2016-12-06 21:51:50 +01:00
ShinDarth
488ebbfe5d [VarDumper] fix tests when xdebug is enabled 2016-12-06 17:03:37 +01:00
Nicolas Grekas
bfe149fdc6 [Cache] Fix dumping SplDoublyLinkedList iter mode 2016-12-05 18:21:04 +01:00
Fabien Potencier
f9bceb832f bug #20736 [Console] fixed PHP7 Errors when not using Dispatcher (keradus)
This PR was squashed before being merged into the 2.7 branch (closes #20736).

Discussion
----------

[Console] fixed PHP7 Errors when not using Dispatcher

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

Original fix, #19813, works only when there is event dispatcher available.
This PR fix the issue also for scenario without event dispatcher.

Closes #20110 issue and #20111 PR connected to it.
Closing #17257 , as everywhere the error is converted to exception and it should be handled

Commits
-------

899fa79 [Console] fixed PHP7 Errors when not using Dispatcher
2016-12-05 14:00:59 +01:00
Dariusz Ruminski
899fa7936b [Console] fixed PHP7 Errors when not using Dispatcher 2016-12-05 14:00:57 +01:00
Iltar van der Berg
d1a7164626 Regression test for missing controller arguments 2016-12-05 08:37:23 +01:00
Martynas Narbutas
8306530e60 [Security] AbstractVoter method supportsAttribute gives false positive if attribute is zero (0) 2016-12-03 15:43:25 +01:00
Christian Flothmann
aea0478451 fix a test checking for a value 2016-12-03 14:58:39 +01:00
Fabien Potencier
7ef0951daf bug #20418 [Form][DX] FileType "multiple" fixes (yceruto)
This PR was squashed before being merged into the 2.7 branch (closes #20418).

Discussion
----------

[Form][DX] FileType "multiple" fixes

| 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/12547
| License       | MIT
| Doc PR        | -

# (1st) Derive "data_class" option from passed "multiple" option

Information
-------------

Following this tutorial ["How to Upload Files"][1] but storing many `brochures` instead of one, i.e.:

```php
// src/AppBundle/Entity/Product.php

class Product
{
    /**
     * @var string[]
     *
     * @ORM\Column(type="array")
     */
    private $brochures;

    //...
}
```

```php
//src/AppBundle/Form/ProductType.php

$builder->add('brochures', FileType::class, array(
    'label' => 'Brochures (PDF files)',
    'multiple' => true,
));
```

The Problem
--------------

I found a pain point here when the form is loaded again after save some brochures (Exception):

> The form's view data is expected to be an instance of class Symfony\Component\HttpFoundation\File\File, but is a(n) array. You can avoid this error by setting the "data_class" option to null or by adding a view transformer that transforms a(n) array to an instance of Symfony\Component\HttpFoundation\File\File.

The message is very clear, but counter-intuitive in this case, because the form field (`FileType`) was configured with `multiple = true`, so IMHO it shouldn't expect a `File` instance but an array of them at all events.

The PR's effect
---------------

**Before:**

```php
$form = $this->createFormBuilder($product)
    ->add('brochures', FileType::class, [
        'multiple' => true,
	'data_class' => null, // <---- mandatory
    ])
    ->getForm();
```

**After:**

```php
$form = $this->createFormBuilder($product)
    ->add('brochures', FileType::class, [
        'multiple' => true,
    ])
    ->getForm();
```

# (2nd) Return empty `array()` at submit no file

Information
-------------

Based on the same information before, but adding some constraints:

```php
// src/AppBundle/Entity/Product.php

use Symfony\Component\Validator\Constraints as Assert;

class Product
{
    /**
     * @var string[]
     *
     * @ORM\Column(type="array")
     *
     * @Assert\Count(min="1") // or @Assert\NotBlank()
     * @Assert\All({
     *     @Assert\File(mimeTypes = {"application/pdf", "application/x-pdf"})
     * })
     *
     */
    private $brochures;
}
```

This should require at least one file to be stored.

The Problem
--------------

But, when no file is uploaded at submit the form, it's valid completely. The submitted data for this field was `array(null)` so the constraints pass without any problem:

* `@Assert\Count(min="1")` pass! because contains at least one element (No matter what)
* `@Assert\NotBlank()` it could pass! because no `false` and no `empty()`
* `@Assert\File()` pass! because the element is `null`

Apart from that really we expecting an empty array instead.

The PR's effect
----------------

**Before:**

```php
// src/AppBundle/Entity/Product.php

use Symfony\Component\Validator\Constraints as Assert;

class Product
{
    /**
     * @var string[]
     *
     * @ORM\Column(type="array")
     *
     * @Assert\All({
     *     @Assert\NotBlank,
     *     @Assert\File(mimeTypes = {"application/pdf", "application/x-pdf"})
     * })
     *
     */
    private $brochures;
}
```

**After:**

```php
// src/AppBundle/Entity/Product.php

use Symfony\Component\Validator\Constraints as Assert;

class Product
{
    /**
     * @var string[]
     *
     * @ORM\Column(type="array")
     *
     * @Assert\Count(min="1") // or @Assert\NotBlank
     * @Assert\All({
     *     @Assert\File(mimeTypes = {"application/pdf", "application/x-pdf"})
     * })
     *
     */
    private $brochures;
}
```

  [1]: http://symfony.com/doc/current/controller/upload_file.html

Commits
-------

36b7ba6 [Form][DX] FileType "multiple" fixes
2016-12-03 12:33:29 +01:00
Yonel Ceruto
36b7ba64f4 [Form][DX] FileType "multiple" fixes 2016-12-03 12:33:12 +01:00
Fabien Potencier
fe15381a45 minor #20425 [Form] fixed "empty_value" option deprecation (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] fixed "empty_value" option deprecation

| Q             | A
| ------------- | ---
| Branch?       | 2.x only
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/15945#r86547326
| License       | MIT
| Doc PR        | ~

I didn't make any profiling but a resolver instance is passed to `configureOptions()` creating locale variables including those exceptions for each field using one of the patched form types, so I guess the memory usage can grow really fast.

Commits
-------

7e84907 [Form] fixed "empty_value" option deprecation
2016-12-03 11:52:40 +01:00
Fabien Potencier
5f62f01943 fixed CS 2016-12-03 11:50:08 +01:00
Fabien Potencier
4a7fbdde5a bug #19902 [DependencyInjection] PhpDumper.php: hasReference() shouldn't search references in lazy service. (antanas-arvasevicius)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] PhpDumper.php: hasReference() shouldn't search references in lazy service.

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

more info:
https://github.com/symfony/symfony/issues/19901

Commits
-------

595a978 [DependencyInjection] PhpDumper.php: hasReference() should not search references in lazy service arguments.
2016-12-03 11:48:01 +01:00
vlakoff
9b9d33959c [Finder] Refine phpdoc about argument for NumberComparator 2016-12-03 06:31:03 +01:00
Maxime Steinhausser
18fc6b54da [Console] Fix wrong handling of multiline arg/opt descriptions 2016-11-30 19:39:48 +01:00
Nicolas Grekas
c360a222ef bug #20671 [Config] ConfigCache::isFresh() should return false when unserialize() fails (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Config] ConfigCache::isFresh() should return false when unserialize() fails

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

Removes some `Warning: Class __PHP_Incomplete_Class has no unserializer` failures when clearing the cache.

Commits
-------

609245e [Config] ConfigCache::isFresh() should return false on __PHP_Incomplete_Class
2016-11-29 11:51:46 +01:00
Nicolas Grekas
609245e953 [Config] ConfigCache::isFresh() should return false on __PHP_Incomplete_Class 2016-11-29 11:39:48 +01:00
Nicolas Grekas
6d1f1b5d4a [ClassLoader] Use only forward slashes in generated class map 2016-11-29 09:16:08 +01:00
Fabien Potencier
ec937cbcd9 bug #20664 [Validator] ensure the proper context for nested validations (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] ensure the proper context for nested validations

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

Commits
-------

56c8ff8 ensure the proper context for nested validations
2016-11-29 09:13:44 +01:00
Antanas Arvasevicius
595a9781e2 [DependencyInjection] PhpDumper.php: hasReference() should not search references in lazy service arguments. 2016-11-28 16:07:09 +02:00
Christian Flothmann
56c8ff8b21 ensure the proper context for nested validations 2016-11-28 10:01:58 +01:00
Robin Chalas
2699009770
[HttpFoundation] Fix test ensuring isMethodSafe() checks cacheable 2016-11-25 23:28:18 +01:00
Jules Pietri
7e8490715c [Form] fixed "empty_value" option deprecation 2016-11-25 20:10:28 +01:00
Andreas Braun
70c42f2676
Cast result to int before adding to it
This fixes the occasional warning about non-numeric values when using PHP 7.1
2016-11-25 15:42:00 +01:00
Nicolas Grekas
8c2a77bbca bug #20474 [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name (fancyweb)
This PR was squashed before being merged into the 2.7 branch (closes #20474).

Discussion
----------

[Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name

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

This is a follow up PR to https://github.com/symfony/symfony/pull/20327.

I also decided to improve the current `is_numeric()` check that is done by a truer one. The current limitation is that a PCRE subpattern name must not start with a digit which is different.

Commits
-------

73fbd08 [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name
2016-11-25 13:07:11 +01:00
Thomas Calvet
73fbd085f1 [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name 2016-11-25 13:06:46 +01:00
Alexandru Bucur
25a629419a Update documentation link to the component
Update documentation link to the component since it has standalone examples
2016-11-25 11:12:25 +01:00
Nicolas Grekas
bbddeec6d9 minor #20630 [HttpFoundation] Add links to RFC-7231 (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpFoundation] Add links to RFC-7231

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

ping @xabbuh

Commits
-------

c17a85b [HttpFoundation] Add links to RFC-7231
2016-11-25 11:09:18 +01:00
Nicolas Grekas
7b33c0906b minor #20626 Tag missing internals (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

Tag missing internals

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

Commits
-------

97e94b4 Tag missing internals
2016-11-25 11:02:25 +01:00
Nicolas Grekas
c17a85beff [HttpFoundation] Add links to RFC-7231 2016-11-25 10:58:59 +01:00
Nicolas Grekas
e62a390ff5 bug #20566 [DI] Initialize properties before method calls (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #20566).

Discussion
----------

[DI] Initialize properties before method calls

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes-ish
| New feature?  | no
| BC breaks?    | not sure
| Deprecations? | no
| Tests pass?   | not yet (only dumps seem to fail)
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Given

```yml
services:
    handler:
        class: AppBundle\Handler
        properties:
            debug: '%kernel.debug%'
        calls:
            - [handle]
```

I totally expected `Handler::$debug` to be set before `Handler::handle` is called. It was not..  and it's really annoying :)

Commits
-------

0af433b [DI] Initialize properties before method calls
2016-11-25 10:44:34 +01:00
Roland Franssen
0af433b01f [DI] Initialize properties before method calls 2016-11-25 10:44:31 +01:00
Maxime Steinhausser
97e94b4019 Tag missing internals 2016-11-25 08:43:06 +01:00
Nicolas Grekas
3eb8a342f5 bug #20609 [DI] Fixed custom services definition BC break introduced in ec7e70fb… (kiler129)
This PR was squashed before being merged into the 2.7 branch (closes #20609).

Discussion
----------

[DI] Fixed custom services definition BC break introduced in ec7e70fb…

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no, fixes previous BC
| Deprecations? | no
| Tests pass?   | yes (verified on Win only)
| Fixed tickets | #20608
| License       | MIT
| Doc PR        | -

Commits
-------

7a5e11e [DI] Fixed custom services definition BC break introduced in ec7e70fb…
2016-11-24 11:37:50 +01:00
kiler129
7a5e11eb12 [DI] Fixed custom services definition BC break introduced in ec7e70fb… 2016-11-24 11:34:23 +01:00
Fabien Potencier
af9c279e23 bug #20598 [DI] Aliases should preserve the aliased invalid behavior (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] Aliases should preserve the aliased invalid behavior

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

Commits
-------

7752308 [DI] Aliases should preserve the aliased invalid behavior
2016-11-23 17:13:15 -08:00
Fabien Potencier
34b9fd681e bug #20602 [HttpKernel] Revert BC breaking change of Request::isMethodSafe() (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Revert BC breaking change of Request::isMethodSafe()

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes (reverting a previous BC break)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #20562
| License       | MIT
| Doc PR        | -

As spotted in #20562, we should not have broken a minor version. Instead, we should have deprecated the bad behavior. This is done in #20603.

Commits
-------

0c3b7d7 [HttpKernel] Revert BC breaking change of Request::isMethodSafe()
2016-11-23 16:42:12 -08:00
Maxime Steinhausser
412fbe613f [DI] minor FileLoaders tests update 2016-11-23 22:37:45 +01:00
Nicolas Grekas
0c3b7d7b8d [HttpKernel] Revert BC breaking change of Request::isMethodSafe() 2016-11-23 14:53:57 +01:00
Nicolas Grekas
7752308c96 [DI] Aliases should preserve the aliased invalid behavior 2016-11-22 19:19:49 +01:00
Imangazaliev
6c3150df63 [DOMCrawler] Bug fixed 2016-11-21 16:09:36 -08:00
Fabien Potencier
7047e4d31f bug #20576 [Process] Do feat test before enabling TTY mode (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] Do feat test before enabling TTY mode

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

Commits
-------

69bfbbf [Process] Do feat test before enabling TTY mode
2016-11-21 15:59:43 -08:00
Nicolas Grekas
69bfbbf8c2 [Process] Do feat test before enabling TTY mode 2016-11-21 10:47:03 +01:00
Fabien Potencier
2af58be68f bumped Symfony version to 2.7.22 2016-11-20 18:19:38 -08:00
Fabien Potencier
dec83adc4b updated VERSION for 2.7.21 2016-11-20 17:12:54 -08:00
Nicolas Grekas
e968d0ff5d minor #20551 [ci] Testing with UTC hides bugs (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[ci] Testing with UTC hides bugs

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

As shown by #20550, we're having bugs because we don't in proper TZ conditions.
Let's do Europe on Travis, and America on Windows.

Commits
-------

e0f9bda [ci] Testing with UTC hides bugs
2016-11-18 15:46:21 -05:00
Nicolas Grekas
e0f9bda49a [ci] Testing with UTC hides bugs 2016-11-18 15:26:45 -05:00
Fabien Potencier
015fe87266 bug #20543 [DI] Fix error when trying to resolve a DefinitionDecorator (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] Fix error when trying to resolve a DefinitionDecorator

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

Instead of the currently obscure `ReflectionException: Class does not exist` message, let's throw a useful error message.

Commits
-------

8e0da2f [DI] Fix error when trying to resolve a DefinitionDecorator
2016-11-17 11:18:58 -05:00
Nicolas Grekas
8e0da2f39e [DI] Fix error when trying to resolve a DefinitionDecorator 2016-11-17 06:21:23 -05:00
Indra Gunawan
af9016fa27 [Validator] improve and added more Indonesian translation. 2016-11-16 16:46:48 +07:00
Fabien Potencier
a1afa21a8c minor #20506 DX: replace @link with @see annotation (keradus)
This PR was merged into the 2.7 branch.

Discussion
----------

DX: replace @link with @see annotation

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

Just to standardise.

```console
λ grep -r "* @see " src | wc -l
    360

λ grep -r "* @link " src | wc -l
     12
```

Commits
-------

f7326c1 DX: replace @link with @see annotation
2016-11-15 18:00:43 -05:00
Nicolas Grekas
0221ffcb8f bug #20519 [Debug] Remove GLOBALS from exception context to avoid endless recursion (Seldaek)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug] Remove GLOBALS from exception context to avoid endless recursion

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

This fixes a endless recursion as seen in https://github.com/felixfbecker/php-language-server/pull/137 - it only happens if you trigger an error in the global context so it's kinda hard to write a test for, but hopefully the fix can be accepted.

Commits
-------

1bb95ac [Debug] Remove GLOBALS from exception context to avoid endless recursion
2016-11-15 07:52:31 -05:00
Jordi Boggiano
1bb95acb84 [Debug] Remove GLOBALS from exception context to avoid endless recursion 2016-11-15 13:37:17 +01:00
Giorgio Premi
a60cd15850 [ClassLoader] Fix ClassCollectionLoader inlining with __halt_compiler 2016-11-15 04:22:02 -05:00
Dariusz Ruminski
f7326c15d8 DX: replace @link with @see annotation 2016-11-13 18:41:36 +01:00
Fabien Potencier
6648615081 minor #20500 Tag the FormFieldRegistry as being internal (stof)
This PR was merged into the 2.7 branch.

Discussion
----------

Tag the FormFieldRegistry as being internal

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

The phpdoc already describes it as being internal (since it was introduced). This adds the proper tag to mark it as internal in our standard way.

Commits
-------

0801f97 Tag the FormFieldRegistry as being internal
2016-11-12 07:52:13 -08:00
Christophe Coevoet
0801f9723b Tag the FormFieldRegistry as being internal 2016-11-12 16:48:22 +01:00
Fabien Potencier
edf5d715e3 bug #20307 [Form] Fix Date\TimeType marked as invalid on request with single_text and zero seconds (LuisDeimos)
This PR was squashed before being merged into the 2.7 branch (closes #20307).

Discussion
----------

[Form] Fix Date\TimeType marked as invalid on request with single_text and zero seconds

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

Fix: When using a form with an Time type with option 'widget' => 'single_text', and 0 is selected in the seconds, we obtain an TransformationFailedException "Unable to reverse value for property path "[time]": Data missing". Check ticket #20304

Commits
-------

bcb03e0 [Form] Fix Date\TimeType marked as invalid on request with single_text and zero seconds
2016-11-12 07:33:13 -08:00
Luis Ramírez +Deimos+
bcb03e0a39 [Form] Fix Date\TimeType marked as invalid on request with single_text and zero seconds 2016-11-12 07:33:12 -08:00
Tobias Nyholm
f3fede2e83 [Validator] Added missing swedish translation 2016-11-10 13:05:13 -08:00
Fabien Potencier
3594877f75 bug #20466 [Translation] fixed nested fallback catalogue using multiple locales. (aitboudad)
This PR was merged into the 2.7 branch.

Discussion
----------

[Translation] fixed nested fallback catalogue  using multiple locales.

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

Commits
-------

bac217d [Translation] fixed nested fallback catalogue  using multiple locales.
2016-11-09 14:55:02 -08:00
Fabien Potencier
6953f4f779 minor #20444 [YAML] PHPDoc fixes for inline parser/dumper (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[YAML] PHPDoc fixes for inline parser/dumper

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Commits
-------

dd47295 fixed phpdoc
2016-11-09 14:52:56 -08:00
Abdellatif Ait boudad
31deea1d3d [TranslationDebug] workaround for getFallbackLocales. 2016-11-09 20:23:10 +00:00
Abdellatif Ait boudad
bac217dd83 [Translation] fixed nested fallback catalogue using multiple locales. 2016-11-09 19:27:17 +00:00
Roland Franssen
dd47295c15 fixed phpdoc 2016-11-09 17:27:48 +00:00
Karim Miladi
5a1bf6aa6e [Command] Fixed method comments as phpDoc syntax 2016-11-09 08:10:25 -08:00
Christian Flothmann
adbc529b7b prefer getSourceContext() over getSource() 2016-11-07 19:42:43 +01:00
Fabien Potencier
fd1ee25ebd minor #20275 [HttpFoundation] Avoid implicit null to array conversion in request matcher (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #20275).

Discussion
----------

[HttpFoundation] Avoid implicit null to array conversion in request matcher

| Q | A |
| --- | --- |
| Branch? | 2.7 |
| Bug fix? | yes |
| New feature? | no |
| BC breaks? | no |
| Deprecations? | no |
| Tests pass? | yes |
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any |
| License | MIT |
| Doc PR | reference to the documentation PR, if any |

`null` is allowed _and_ passed as default value from the constructor. Lets be explicit.

Commits
-------

a2c0a78 [HttpFoundation] Avoid implicit null to array conversion in request matcher
2016-11-07 07:11:09 -08:00
Roland Franssen
a2c0a785c2 [HttpFoundation] Avoid implicit null to array conversion in request matcher 2016-11-07 07:11:08 -08:00
Fabien Potencier
b06c00edcd bug #20422 [Translation][fallback] add missing resources in parent catalogues. (aitboudad)
This PR was merged into the 2.7 branch.

Discussion
----------

[Translation][fallback] add missing resources in parent catalogues.

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

Commits
-------

27c91e5 [Translation][fallback] add missing resources in parent catalogues.
2016-11-06 08:10:50 -08:00
Fabien Potencier
94d9bfbc1d bug #20378 [Form] Fixed show float values as choice value in ChoiceType (yceruto)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fixed show float values as choice value in ChoiceType

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

There is a closed [issue][1] related to this before Symfony 2.7 (when choice value still was the key from the `array`). This issue already happened in 2.7+ but now inside Symfony core.

Information
-----------

[This method][3] checks whether the given choices can be cast to strings without generating duplicates (3ab8189080 in #16705):

```php
private function castableToString(array $choices, array &$cache = array())
{
    foreach ($choices as $choice) {
        if (is_array($choice)) {
            if (!$this->castableToString($choice, $cache)) {
                return false;
            }

            continue;
        } elseif (!is_scalar($choice)) {
            return false;
        } elseif (isset($cache[$choice])) {  // <---- red breakpoint
            return false;
        }

        $cache[$choice] = true; // <---- red breakpoint
    }

    return true;
}
```

So it should to keep [scalar values (integer, float, string or boolean)][2] as choice values always (unless have duplicates values).

The Problem
-----------

But in this situation it doesn't happen:

```php
$form = $this->createFormBuilder()
    ->add('foo', ChoiceType::class, [
        'choices' => [
            'Min' => 0.5,
            'Mid' => 1.0,
            'Max' => 1.5,
        ]
    ])
    ->getForm();
```

**Output:**

```html
<select id="form_foo" name="form[foo]">
  <option value="0">Min</option>
  <option value="1">Mid</option>
  <option value="2">Max</option>
</select>
```

[**Why?**][5]

If the key of the array is a float number, it's interpreted as integer automatically:

```php
// ...

$cache[$choice] = true;

// when $choice = 0.5: $cache = [0 => true]
// when $choice = 1.0: $cache = [0 => true, 1 => true]
```

Then, when `$choice = 1.5` [this sentence][4] `isset($cache[1.5])` returns `true` because really checks `isset($cache[1])` and this key already exists, so `castableToString()` returns `false` (detected as duplicate) and the choices values are generated incrementing integers as values.

The PR's Effect
-------------

**Before:**

```html
<select id="form_foo" name="form[foo]">
  <option value="0">Min</option>
  <option value="1">Mid</option>
  <option value="2">Max</option>
</select>
```

**After:**

```html
<select id="form_foo" name="form[foo]">
  <option value="0.5">Min</option>
  <option value="1">Mid</option>
  <option value="1.5">Max</option>
</select>
```

  [1]: https://github.com/symfony/symfony/issues/13817
  [2]: http://php.net/manual/en/function.is-scalar.php
  [3]: https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Form/ChoiceList/ArrayChoiceList.php#L228
  [4]: https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Form/ChoiceList/ArrayChoiceList.php#L239
  [5]: https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Form/ChoiceList/ArrayChoiceList.php#L243

Commits
-------

3564228 [Form] Fix show float values as choices values in ChoiceType
2016-11-06 08:03:54 -08:00
Abdellatif Ait boudad
27c91e514e [Translation][fallback] add missing resources in parent catalogues. 2016-11-06 08:07:39 +00:00
Yonel Ceruto
35642288fa [Form] Fix show float values as choices values in ChoiceType 2016-11-05 14:02:34 -04:00
Fabien Potencier
f37ac131e1 bug #20375 [HttpFoundation][Session] Fix memcache session handler (klandaika)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpFoundation][Session] Fix memcache session handler

| Q             | A
| ------------- | ---
| Branch?       | 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 3.0, 3.1, master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Commit 0216e05605 removed the opening of connection to memcached server on call to `open()`, because it's assumed that connection is already opened. However, `close()` still closes the connection. As a result no more read/write calls can be made if session got closed, as the connection does not get reestablished.

Basically MemcacheSessionHandler should follow same logic as Memcache**d**SessionHandler, which is exactly what this MR acomplishes.

Commits
-------

0423d894 [HttpFoundation][Session] memcached connection should not be closed
2016-11-04 08:14:52 -07:00
Robin Chalas
e64de1eac6 [Console] Fix infinite loop on missing input
[Console] Use console exception for missing input

Backport Console RuntimeException in 2.7
2016-11-03 09:51:57 +01:00
Nicolas Grekas
4eb003b653 CS fixes 2016-11-03 08:49:30 +01:00
Nicolas Grekas
0aca495522 minor #20364 CS: apply rules (keradus)
This PR was squashed before being merged into the 2.7 branch (closes #20364).

Discussion
----------

CS: apply rules

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

Commits
-------

22d4e15 CS: apply rules
2016-11-03 08:44:55 +01:00
Dariusz Ruminski
22d4e15634 CS: apply rules 2016-11-03 08:44:53 +01:00
Nicolas Grekas
7520f7b937 [Yaml] Clean some messages + add test case 2016-11-02 15:01:29 +01:00
VJ
0423d894f4 [HttpFoundation][Session] memcached connection should not be closed 2016-11-02 08:42:51 -04:00
Maxime STEINHAUSSER
46dd3b9acb [Form] Fix UrlType transforms valid protocols 2016-10-30 08:33:18 -07:00
Nicolas Grekas
f2f232d599 Enhance GAE compat by removing some realpath() 2016-10-27 11:13:40 +02:00
Fabien Potencier
ed11f22360 bumped Symfony version to 2.7.21 2016-10-26 19:12:15 -07:00
Fabien Potencier
8beacd2dd8 updated VERSION for 2.7.20 2016-10-26 18:37:19 -07:00
Tristan Darricau
a79991f44a
Fix edge case with StreamedResponse where headers are sent twice 2016-10-24 16:36:35 +02:00
Christian Flothmann
c333eb70b6 merge tags instead of completely replacing them 2016-10-23 08:52:28 +02:00
Fabien Potencier
0c551b5236 minor #20273 [FrameworkBundle][HttpKernel] move test to the HttpKernel component (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle][HttpKernel] move test to the HttpKernel component

| 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/19443#discussion_r83414612
| License       | MIT
| Doc PR        |

The moved test case does not test the `AddConsoleCommandPass` class, but ensures certain behavior in the `registerCommands()` method of the `Bundle` class from the HttpKernel component.

Commits
-------

c9ca322 move test to the HttpKernel component
2016-10-22 07:38:20 -07:00
Lars Strojny
f09e6218f8 Trim constant values in XmlFileLoader 2016-10-22 07:36:57 -07:00
Christian Flothmann
c9ca322825 move test to the HttpKernel component 2016-10-22 11:18:43 +02:00
Jáchym Toušek
8a420c554c [Validator] Fix annotation 2016-10-19 15:22:52 -07:00
Nicolas Grekas
8dee4be6b7 bug #20235 [DomCrawler] Allow pipe (|) character in link tags when using Xpath expressions (klausi, nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[DomCrawler] Allow pipe (|) character in link tags when using Xpath expressions

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

@klausi could you please validate this patch? Is it an improvement over yours? (sorry I don't have the proper use case to test.)

Commits
-------

17757d8 [DomCrawler] Optimize DomCrawler::relativize()
5b26e33 [DomCrawler] Allow pipe (|) character in link tags when using Xpath expressions
2016-10-18 17:34:22 +02:00
Nicolas Grekas
17757d8114 [DomCrawler] Optimize DomCrawler::relativize() 2016-10-18 15:42:15 +02:00
Nicolas Grekas
3c216176e8 [HttpKernel] Fix source links with latests Twig versions 2016-10-18 11:20:54 +02:00
Klaus Purer
5b26e33261 [DomCrawler] Allow pipe (|) character in link tags when using Xpath expressions 2016-10-18 10:27:59 +02:00
Fabien Potencier
ef48f5924a bug #20224 [Twig] removed deprecations added in Twig 1.27 (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

[Twig] removed deprecations added in Twig 1.27

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

Commits
-------

f0849d8 [TwigBridge] removed deprecations added in Twig 1.27
2016-10-17 21:24:28 -07:00
Fabien Potencier
f0849d8331 [TwigBridge] removed deprecations added in Twig 1.27 2016-10-17 18:02:36 -07:00
Dariusz Ruminski
b0df3a7eb9 PHP CS Fixer: use php_unit_dedicate_assert 2016-10-16 22:09:53 +02:00
Muhammed Akbulut
cd3206c5cb fixed Filesystem:makePathRelative and added 2 more testcases 2016-10-14 07:26:34 -07:00
Fabien Potencier
8d218e7f50 bug #20218 [HttpFoundation] no 304 response if method is not cacheable (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpFoundation] no 304 response if method is not cacheable

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

Since #19321 OPTIONS and TRACE are considered safe methods. But both methods should not lead to "304 Not modified" responses.

Commits
-------

3d6b450 no 304 response if method is not cacheable
2016-10-14 07:10:20 -07:00
Fabien Potencier
7e2f24fc6f bug #20207 [DependencyInjection] move tags from decorated to decorating service (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] move tags from decorated to decorating service

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

Commits
-------

7def83c move tags from decorated to decorating service
2016-10-14 07:09:04 -07:00
Christian Flothmann
3d6b4502c8 no 304 response if method is not cacheable 2016-10-14 13:10:27 +02:00
Fabien Potencier
f76e77f924 fixed typo 2016-10-13 18:29:00 -07:00
David Maicher
c43de7f21a [HttpCache] fix: do not cache OPTIONS request 2016-10-13 22:14:35 +02:00
Fabien Potencier
df138fb636 fixed CS 2016-10-13 07:02:27 -07:00
Wesley Lancel
c1ae7b6ad7 Prevent infinite loop in PropertyMetadata 2016-10-13 07:00:50 -07:00
Christian Flothmann
7def83c0b1 move tags from decorated to decorating service 2016-10-11 23:07:33 +02:00
Nicolas Grekas
dcf601f3fa Minor fixes & cleanups 2016-10-06 10:40:01 +02:00
Fabien Potencier
a5a91a7fa1 bug #19725 [Security] $attributes can be anything, but RoleVoter assumes strings (Jonatan Männchen)
This PR was merged into the 2.7 branch.

Discussion
----------

[Security] $attributes can be anything, but RoleVoter assumes strings

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #18042
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Commits
-------

ad3ac95 bug #18042 [Security] $attributes can be anything, but RoleVoter assumes strings
2016-10-05 18:42:44 -07:00
Roland Franssen
1159f8bba6 [HttpFoundation] JSONP callback validation 2016-10-05 12:15:52 -07:00
Javier Eguiluz
29226ef116 [Console] Improved the explanation of the hasOption() method 2016-10-05 10:26:56 -07:00
Fabien Potencier
f4fe36a4e1 bug #19961 [Console] Escape question text and default value in SymfonyStyle::ask() (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Escape question text and default value in SymfonyStyle::ask()

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

Commits
-------

eed3cc5 [Console] Escape default value and question in SymfonyStyle::ask()
2016-10-04 20:05:49 -07:00
Fabien Potencier
4c854e7329 bug #20141 [Console] Fix validation of empty values using SymfonyQuestionHelper::ask() (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fix validation of empty values using SymfonyQuestionHelper::ask()

| 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

When using `QuestionHelper::ask()` it's allowed to return an empty value as answer, e.g:

```php
$helper = new QuestionHelper();
$question = new Question('foo', false);
$question->setValidator(function ($v) { return $v; });
$answer = $helper->ask($input, $output, $question);
```

Just typing `enter` for answering this question works, the value of `$answer` would be `false`.
But doing the same with `SymfonyQuestionHelper::ask()`:

```php
$helper = new SymfonyQuestionHelper();
$question = new Question('foo', false);
$question->setValidator(function ($v) { return $v; });
$answer = $helper->ask($input, $output, $question);
```

>  [ERROR] A value is required.

Same for `''` or `null`.
Here I kept the same check but used as default validator, if a validator is set and allows an empty value to be returned then it's ok.

Also I am not sure about if this default validator should be kept, imho we should be consistent with the default question helper, using the `SymfonyQuestionHelper` should only impact the output.

Diff best viewed [like this](https://github.com/symfony/symfony/pull/20141/files?w=1)
ping @kbond

Commits
-------

a8b910b [Console] Fix validation of null values using SymfonyStyle::ask()
2016-10-04 19:49:41 -07:00
Nicolas Grekas
dda18df6de [VarDumper] Fix ReflectionNamedType->getName() detection 2016-10-04 14:01:35 +02:00
Robin Chalas
a8b910bec2
[Console] Fix validation of null values using SymfonyStyle::ask() 2016-10-04 00:20:32 +02:00
Fabien Potencier
3086fd38e5 bumped Symfony version to 2.7.20 2016-10-03 11:42:03 -07:00
Fabien Potencier
70afffbbff updated VERSION for 2.7.19 2016-10-03 11:15:49 -07:00
Fabien Potencier
9ed8d576e1 bug #20102 [Validator] Url validator not validating hosts ending in a number (gwkunze)
This PR was squashed before being merged into the 2.7 branch (closes #20102).

Discussion
----------

[Validator] Url validator not validating hosts ending in a number

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no (Should validate slightly more urls)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | None that I could find
| License       | MIT
| Doc PR        |

We ran into an issue where the URL validator wasn't validating URL that we got from a legitimate (intranet) URL. Afaict from skimming RFCs the URL `http://myhost123/` is valid, however the current regular expression doesn't accept the last part of a hostname (in this case the entire hostname is the last part as there are no periods in the host).

I've fixed this by adding the numbers unicode character property to the regular expression, I'm not sure but symbol characters (`\pS`) might need to be added to the group as well.

Commits
-------

934c434 [Validator] Url validator not validating hosts ending in a number
2016-10-03 09:05:36 -07:00
Gijs Kunze
934c434d33 [Validator] Url validator not validating hosts ending in a number 2016-10-03 09:05:35 -07:00
Fabien Potencier
80577f96bf bug #20122 [Validator] Reset constraint options (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Reset constraint options

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #20106
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

I think it's good to reset the internal pointer of the options array if we depend on `key($options)`. I've added tests to clarify we intentionally check for the first key.

The current behavior actually differs for hhvm/php7 - https://3v4l.org/e6r6E

Commits
-------

4c6ddd4 reset constraint options
2016-10-02 08:50:33 -07:00
Roland Franssen
4c6ddd4737 reset constraint options 2016-10-01 21:36:38 +00:00
Fabien Potencier
e20cd8ae9f fixed CS 2016-09-30 12:35:09 -07:00
Fabien Potencier
c1c42a52bc bug #20078 Fix #19943 Make sure to process each interface metadata only once (lemoinem)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix #19943 Make sure to process each interface metadata only once

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

Here is the fix for #19943, If you have `InterfaceA <- InterfaceB <- Class` with a constraint on a method defined on `InterfaceA`, the constraint and its eventual violations are currently validated and reported twice.

Copy from https://github.com/symfony/symfony/issues/19943#issuecomment-250238529:
As far as I can see, the problem seems to arise in [`LazyLoadingMetadataFactory`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Validator/Mapping/Factory/LazyLoadingMetadataFactory.php#L117-L123):

[`ReflectionClass::getInterfaces()`](http://php.net/manual/en/reflectionclass.getinterfaces.php) returns both interfaces implemented directly and through inheritance (either through another interface or through a parent class). In the end, the following process occurs:

1. `PriceInterface` is parsed and its `NotBlank` constraint on `value` is loaded
2. `VariablePriceInterface` is parsed and inherits `PriceInterface`'s constraints (which is OK).
3. `ProductPrice` is parsed and inherits both `PriceInterface` and `VariablePriceInterface`'s  constraints, which leads to a duplicated `NotBlank` constraint, one from each Interface.

The Best Way ™️ would be to be able to extract the list of interfaces implemented by a class directly only. However, the process seems a bit intricate... I will start working on it and prepare a PR to that effect. However, if any of you has a better idea, I'm all hears...

TODO:
- [x] Regression tests to make sure the bug doesn't reappear

Commits
-------

2f9b65a Fix #19943 Make sure to process each interface metadata only once
2016-09-30 12:33:15 -07:00
Fabien Potencier
35091b1837 Revert "bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)"
This reverts commit eae5a9ba0b, reversing
changes made to fd763ad5a3.
2016-09-29 16:48:55 -07:00
Fabien Potencier
eae5a9ba0b bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] compound forms without children should be considered rendered implicitly

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

Commits
-------

8234f2a #17580 compound forms without children should be considered rendered implicitly
2016-09-29 09:02:32 -07:00
Nicolas Grekas
466dbe62b4 [2.7][VarDumper] Fix PHP 7.1 compat 2016-09-29 13:21:39 +01:00
Christian Flothmann
30c9b1ec28 silent file operation to avoid open basedir issues
Using file operations on a symlink that points to a file outside the
directories being allowed by the open_basedir setting leads to PHP
warnings being raised.
2016-09-28 19:20:21 -07:00
Mathieu Lemoine
2f9b65aa5a Fix #19943 Make sure to process each interface metadata only once 2016-09-28 18:39:11 -04:00
Oliver Hoff
8234f2add4 #17580 compound forms without children should be considered rendered
implicitly
2016-09-28 21:40:37 +02:00
Fabien Potencier
da6c664e98 minor #20064 [Console] Format JSON fixtures (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Format JSON fixtures

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Should make merging upstream easier due better diffs.

```php
foreach (glob('src/Symfony/Component/Console/Tests/Fixtures/*.json') as $file) {
    file_put_contents($file, str_replace(PHP_EOL, "\n", json_encode(json_decode(trim(file_get_contents($file))), JSON_PRETTY_PRINT))."\n");
}
```

Should be re-applied on 2.8, 3.1 and master.

Commits
-------

2ca7823 format json fixtures
2016-09-27 17:09:53 -07:00
Fabien Potencier
40c2cbd12b bug #19951 [Finder] Trim trailing directory slash in ExcludeDirectoryFilterIterator (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Finder] Trim trailing directory slash in ExcludeDirectoryFilterIterator

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19599
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

In this context `path` equals `path/`

Commits
-------

e0e5f0c apply rtrim
2016-09-27 17:07:53 -07:00
Roland Franssen
2ca78233a1 format json fixtures 2016-09-27 17:33:51 +00:00
Roland Franssen
b074a7156a Fixed expectedException annotations 2016-09-23 11:13:36 -07:00
Fabien Potencier
fc0fe87c6d minor #20027 Security and validators messages translation to Latvian (Rikijs)
This PR was merged into the 2.7 branch.

Discussion
----------

Security and validators messages translation to Latvian

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

Commits
-------

ff72f21 Security and validators messages translation to Latvian
2016-09-22 09:52:50 -07:00
Rikijs Murgs
ff72f21427 Security and validators messages translation to Latvian 2016-09-22 19:04:04 +03:00
Sergio Santoro
40af42cb60 [Form] FormView->isRendered() remove dead code and simplify the flow 2016-09-21 22:14:19 +02:00
Fabien Potencier
bb51ed0d20 Revert "minor #20011 Use UUID for error codes for Form validator. (Koc)"
This reverts commit 2cd45a5043, reversing
changes made to d8423071de.
2016-09-21 12:03:56 -07:00
Konstantin.Myakshin
6dbb186f23 Use UUID for error codes for Form validator. 2016-09-21 10:52:48 -07:00
Fabien Potencier
d8423071de bug #20010 [DX] Fixed regression when exception message swallowed when logging it. (Koc)
This PR was merged into the 2.7 branch.

Discussion
----------

[DX] Fixed regression when exception message swallowed when logging it.

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | maybe, wait for Travis
| Fixed tickets | fixed regression introduced in #13418
| License       | MIT
| Doc PR        | -

The problem is: after merging referenced PR we cann't understand what error occured and why authentication request failed (see attached screenshot). Previously it displays exception message, but now it only displays class of the exception.

![9003644109](https://cloud.githubusercontent.com/assets/191082/18717550/f0df61c4-8028-11e6-8dbb-684e4928e913.jpg)

Commits
-------

042cb6b Fixed regression when exception message swallowed when logging it.
2016-09-21 10:05:38 -07:00
Konstantin.Myakshin
042cb6b2b2 Fixed regression when exception message swallowed when logging it. 2016-09-21 18:21:51 +03:00
Vincent Composieux
dfa7f5020e
[Security] Fixed roles serialization on token from user object 2016-09-21 16:33:32 +02:00
Jakub Zalas
b482fb784e [HttpFoundation] Enable memcached tests with the latest memcached extension 2016-09-21 12:21:12 +01:00
Jonatan Männchen
ad3ac95d2d
bug #18042 [Security] $attributes can be anything, but RoleVoter assumes strings 2016-09-21 07:35:02 +00:00
Nicolas Grekas
0d9dacc6db [VarDumper] Fix extra whitespace 2016-09-20 15:04:49 +02:00
Robin Chalas
eed3cc5b52
[Console] Escape default value and question in SymfonyStyle::ask() 2016-09-18 17:48:17 +02:00
Robin Chalas
8952155f92
[Console] Fix empty optionnal options with = separator in argv 2016-09-17 14:42:06 +02:00
Roland Franssen
e0e5f0c379 apply rtrim 2016-09-16 16:53:37 +00:00
Fabien Potencier
b28cd81575 added a comment about a workaround 2016-09-14 14:04:40 -07:00
Götz Gottwald
695e341258 [Finder] no PHP warning on empty directory iteration 2016-09-14 14:03:47 -07:00
Fabien Potencier
c1cc6ca40e bug #19923 [bugfix] [Console] Set Input::$interactive to false when command is executed with --quiet as verbosity level (phansys)
This PR was merged into the 2.7 branch.

Discussion
----------

[bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level

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

Closes #19899.

Commits
-------

4214311 [bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level
2016-09-14 13:28:32 -07:00
Fabien Potencier
ce73768d0f bug #19811 Fixed the nullable support for php 7.1 and below (2.7, 2.8, 3.0) (iltar)
This PR was merged into the 2.7 branch.

Discussion
----------

Fixed the nullable support for php 7.1 and below (2.7, 2.8, 3.0)

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

Fixes the nullable support for 2.7, 2.8 and 3.0, can probably be partially merged into 3.1 but not 100% sure.

/ping @fabpot

Commits
-------

9c48756 Fixed the nullable support for php 7.1 and below
2016-09-14 12:08:00 -07:00
Fabien Bourigault
82415a1667 [Form] Fix typo in doc comment 2016-09-14 09:33:27 +02:00
Fabien Potencier
26e2846c8a bug #19904 [Form] Fixed collapsed ChoiceType options attributes (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fixed collapsed ChoiceType options attributes

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

Commits
-------

7806e2a Fixed collapsed ChoiceType options attributes
2016-09-13 17:22:22 -07:00
Tristan Darricau
e8708195e2 [Config] Handle open_basedir restrictions in FileLocator
Silence `file_exists()` call to avoid open_basedir restrictions warning. (can happen when using relative imports)
2016-09-13 17:08:34 -07:00
Nicolas Grekas
f32198954d bug #19928 [Validator] Update IpValidatorTest data set with a valid reserved IP (jakzal)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Update IpValidatorTest data set with a valid reserved IP

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

The validator uses PHP filter which was recently fixed (see https://bugs.php.net/bug.php?id=72972).

Commits
-------

86a151c [Validator] Update IpValidatorTest data set with a valid reserved IP
2016-09-13 13:51:44 +02:00
Jakub Zalas
86a151c9f5 [Validator] Update IpValidatorTest data set with a valid reserved IP
The validator uses PHP filter which was recently fixed (see https://bugs.php.net/bug.php?id=72972).
2016-09-13 12:11:56 +01:00
Javier Spagnoletti
4214311a1c [bugfix] [Console] Set Input::$interactive to false when command is executed with --quiet as verbosity level 2016-09-13 00:14:14 -03:00
HeahDude
7806e2a05d Fixed collapsed ChoiceType options attributes 2016-09-11 01:56:49 +02:00
Fabien Potencier
ddf8b27e14 bug #19813 [Console] fixed PHP7 Errors are now handled and converted to Exceptions (fonsecas72)
This PR was squashed before being merged into the 2.7 branch (closes #19813).

Discussion
----------

[Console] fixed PHP7 Errors are now handled and converted to Exceptions

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

Commits
-------

d3c613b [Console] fixed PHP7 Errors are now handled and converted to Exceptions
2016-09-08 08:08:48 -07:00
Hugo Fonseca
d3c613be36 [Console] fixed PHP7 Errors are now handled and converted to Exceptions 2016-09-08 08:08:45 -07:00
Matteo Beccati
bf6691ca46 Fix #19721
Issue was introduced in #19541
2016-09-07 13:06:20 +02:00
Fabien Potencier
be2a6d1291 bumped Symfony version to 2.7.19 2016-09-06 19:01:26 -07:00
Fabien Potencier
59985613b2 updated VERSION for 2.7.18 2016-09-06 17:54:19 -07:00
Fabien Potencier
a630f14659 minor #19868 [Security] Optimize RoleHierarchy's buildRoleMap method (Enleur)
This PR was squashed before being merged into the 2.7 branch (closes #19868).

Discussion
----------

[Security] Optimize RoleHierarchy's buildRoleMap method

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

I have an issue with a large role hierarchy(~150 roles). Optimized it a little bit

![image](https://cloud.githubusercontent.com/assets/858989/18271257/df6c4ba0-7439-11e6-8406-e13bdcefe9ca.png)

Commits
-------

c3b68b0 [Security] Optimize RoleHierarchy's buildRoleMap method
2016-09-06 17:21:47 -07:00
Enleur
c3b68b0d28 [Security] Optimize RoleHierarchy's buildRoleMap method 2016-09-06 17:21:44 -07:00
Fabien Potencier
993b405492 bug #19859 [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1) (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| Fixed tickets | #19845
| License       | MIT

See diff as https://github.com/symfony/symfony/pull/19859/files?w=1

Commits
-------

647b3d2 [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-06 16:09:07 -07:00
Fabien Potencier
3b5c353861 bug #19595 [form] lazy trans post_max_size_message. (aitboudad)
This PR was merged into the 2.7 branch.

Discussion
----------

[form] lazy trans `post_max_size_message`.

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

Commits
-------

c03164e [form] lazy trans `post_max_size_message`.
2016-09-06 09:12:45 -07:00
Javier Eguiluz
e4193c746c Minor cleanups and improvements 2016-09-06 09:06:41 -07:00
Abdellatif Ait boudad
c03164e4f9 [form] lazy trans post_max_size_message. 2016-09-06 16:01:53 +01:00
Nicolas Grekas
42244f2a2e [DI] Fix setting synthetic services on ContainerBuilder 2016-09-06 16:19:03 +02:00
Nicolas Grekas
0f6bc0b00a bug #19848 Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)" (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| Fixed tickets | #19689 #19840 #19825 #19857
| License       | MIT
| Doc PR        | -

This reverts commit c89f80a9cd, reversing
changes made to 386e5e78b4.

See discussion in #19847

I'll try adding test cases soon that ensure that:

- [x] *when not leaving scope* synthetic services always throw and ignore the `ContainerInterface::NULL_ON_INVALID_REFERENCE` flag (on 3.x also)
- [x] *when leaving scope* synthetic services always return null and ignore the `ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE`  (until 2.8 since scopes are gone in 3.x)

Commits
-------

8cb28bf [DI] Add anti-regression test
ac742df Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
2016-09-06 12:51:08 +02:00
Iltar van der Berg
9c48756a19 Fixed the nullable support for php 7.1 and below 2016-09-06 11:34:14 +02:00
Nicolas Grekas
13d0510126 minor #19809 Update misleading comment about RFC4627 (teohhanhui)
This PR was merged into the 2.7 branch.

Discussion
----------

Update misleading comment about RFC4627

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

RFC 4627 does not dictate escaping of HTML special characters

Commits
-------

72b6c9e Update misleading comment about RFC4627
2016-09-06 11:29:51 +02:00
Nicolas Grekas
8a9b2870b7 minor #19862 Update GroupSequence.php (vudaltsov)
This PR was submitted for the 3.0 branch but it was merged into the 2.7 branch instead (closes #19862).

Discussion
----------

Update GroupSequence.php

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

Corrected the docblock example

Commits
-------

c8f3741 Update GroupSequence.php
2016-09-06 09:59:02 +02:00
Valentin Udaltsov
c8f3741eba Update GroupSequence.php
Corrected the docblock example
2016-09-06 09:57:53 +02:00
Nicolas Grekas
39905fd807 minor #19830 Code enhancement and cleanup (yceruto)
This PR was squashed before being merged into the 2.7 branch (closes #19830).

Discussion
----------

Code enhancement and cleanup

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

Commits
-------

325da3c Code enhancement and cleanup
2016-09-06 09:26:09 +02:00
Yonel Ceruto
325da3c0d8 Code enhancement and cleanup 2016-09-06 09:26:07 +02:00
Nicolas Grekas
647b3d2f54 [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1) 2016-09-05 21:55:26 +02:00
Nicolas Grekas
8cb28bf751 [DI] Add anti-regression test 2016-09-05 09:18:55 +02:00
Nicolas Grekas
ac742dfc48 Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
This reverts commit c89f80a9cd, reversing
changes made to 386e5e78b4.
2016-09-04 19:06:49 +02:00
James Halsall
68698f2bd4 [BrowserKit] Fix cookie expiration on 32 bit systems
On 32-bit systems the cookie expiration value was not being calculated
correctly as it was being fetched as an integer. When the timestamp exceeded
the PHP_INT_MAX size it would return an invalid value, breaking the cookie
construction.

The BrowserKit cookie has now been updated to get the timestamp as a string
which works around this platform limitation.
2016-09-02 13:36:08 -07:00
Fabien Potencier
2511f2a191 bumped Symfony version to 2.7.18 2016-09-01 20:54:47 -07:00
Fabien Potencier
68124f52fa updated VERSION for 2.7.17 2016-09-01 20:05:16 -07:00
Teoh Han Hui
72b6c9e0b9 Update misleading comment about RFC4627
RFC 4627 does not dictate escaping of HTML special characters
2016-09-01 12:16:03 +08:00
Fabien Potencier
09e4e49b2a minor #19802 [Yaml] Remove legacy code (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[Yaml] Remove legacy code

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

It looks like these lines were forgotten during the transition to 2.0 as references are already [managed in `Inline`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Yaml/Inline.php#L542-L559).

Commits
-------

a88dff3 [Yaml] Remove legacy code
2016-08-31 11:04:35 -07:00
Ener-Getick
a88dff3981
[Yaml] Remove legacy code 2016-08-31 15:10:08 +02:00
Nicolas Grekas
ac9ac8364e bug #19794 [VarDumper] Various minor fixes & cleanups (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[VarDumper] Various minor fixes & cleanups

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| License       | MIT

Minor fixes & cleanups found while working on a few VarDumper enhancements.
I'm going to merge this one quickly to unlock the other PRs I'm preparing for master.

Commits
-------

a989491 [VarDumper] Various minor fixes & cleanups
2016-08-31 09:58:22 +02:00
Nicolas Grekas
a989491ade [VarDumper] Various minor fixes & cleanups 2016-08-31 09:12:09 +02:00
Fabien Potencier
bcb1d8fd0c Revert "bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)"
This reverts commit f28eb9a617, reversing
changes made to bbb75faa15.
2016-08-29 09:54:06 -07:00
Fabien Potencier
e4b48bbc88 minor #19761 [HttpKernel] Add missing SsiFragmentRendererTest (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Add missing SsiFragmentRendererTest

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

One notable difference between ESI/SSI fragments renderers is that [passing options to the strategy doesn't impact the rendered ssi include tag](d666c64eb0 (diff-98eb5db767a1d6600cff43b74800ae46R37)).

Commits
-------

6c89199 [HttpKernel] Add missing SsiFragmentRendererTest
2016-08-27 09:32:53 -07:00
Robin Chalas
6c8919935e
[HttpKernel] Add missing SsiFragmentRendererTest 2016-08-27 16:02:11 +02:00
Waqas Ahmed
43f26727d0 Fixes the calendar in constructor to handle null 2016-08-26 20:13:58 +04:00
Sandro Hopf
54a7eff868 [Validator][GroupSequence] fixed GroupSequence validation ignores PropertyMetadata of parent classes 2016-08-25 18:04:22 -07:00
Fabien Potencier
6de4359e4b minor #19736 [FrameworkBundle][Security] Remove useless mocks (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle][Security] Remove useless mocks

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

Removes mocks causing issues in https://github.com/symfony/symfony/pull/19734.

Commits
-------

fcd3345 [FrameworkBundle][Security] Remove useless mocks
2016-08-25 10:52:51 -07:00
Ener-Getick
fcd3345e34
[FrameworkBundle][Security] Remove useless mocks 2016-08-25 14:52:03 +02:00
Tom Van Looy
c811eb7e8e remove duplicate instruction 2016-08-23 21:36:25 +02:00
Fabien Potencier
a45be6d82a minor #19499 [SecurityBundle] BasicAuthenticationListener: simpler getting value from Request (MacDada)
This PR was merged into the 2.7 branch.

Discussion
----------

[SecurityBundle] BasicAuthenticationListener: simpler getting value from Request

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

Unless I'm mistaken, the default `null` should be OK. If it's not, I will create a new PR with a test proving that `false` or other "special" value must be used.

Commits
-------

d67f090 SecurityBundle:BasicAuthenticationListener: removed a default argument on getting a header value
2016-08-23 09:54:14 -07:00
Fabien Potencier
0544117434 bug #19580 [Validator] fixed duplicate constraints with parent class interfaces (dmaicher)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] fixed duplicate constraints with parent class interfaces

| 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/19516
| License       | MIT
| Doc PR        | -

This fixes https://github.com/symfony/symfony/issues/19516

Commits
-------

fb36c5a [Validator] fixed duplicate constraints with parent class interfaces
2016-08-23 09:51:32 -07:00
Nicolas Grekas
5e5e1db912 minor #19710 [ClassLoader] Fix tests (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[ClassLoader] Fix tests

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Tests pass?   | yes
| License       | MIT

As discussed right now on php-internals, this string is ignored and the docs only tells about null.

Commits
-------

0f95708 [ClassLoader] Fix tests
2016-08-23 15:28:32 +02:00
Nicolas Grekas
0f95708a1d [ClassLoader] Fix tests 2016-08-23 11:26:23 +02:00
Nicolas Grekas
2449a9712c bug #19647 [Debug] Swap dumper services at bootstrap (lyrixx)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug] Swap dumper services at bootstrap

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

---

This commit fix a bug when using debug function too soon.
For example, if you call dump function during kernel::boot() the
dump output will be sent to stderr, even in a web context.

With this patch, the data collector is used by default, so the
dump output is send to the WDT. In a CLI context, if dump is used
too soon, the datacollector will buffer it, and release it at the
end of the script. So in this case everything will be visible by the
end used.

Commits
-------

d80589c [Debug] Swap dumper services at bootstrap
2016-08-23 09:13:30 +02:00
Nicolas Grekas
3596cb26ad bug #19685 [DI][2.7] Include dynamic services in alternatives (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI][2.7] Include dynamic services in alternatives

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Commits
-------

428b5cc include dynamic services in list of alternatives
2016-08-23 09:00:45 +02:00
Nicolas Grekas
589b1d4c38 bug #19702 [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes (aka "small-bc-breaks") (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes (aka "small-bc-breaks")

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| License       | MIT

On PHP 7.2:
- `is_object()` is going to return `true` for `__PHP_Incomplete_Class` instances
- `gettype($closed_resource);` returns "resource (closed)"

ping @nikic FYI
see https://travis-ci.org/symfony/symfony/jobs/154114269 for fixed tests (except the one on ClassLoader which is a BC break on 7.1 that should be fixed there IMHO).

Commits
-------

feb2cd0 [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
2016-08-23 08:53:13 +02:00
Nicolas Grekas
feb2cd0c71 [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes 2016-08-22 19:42:59 +02:00
Taras Girnyk
7c0a62c6a7 [DependencyInjection] PhpDumper::isFrozen inconsistency 2016-08-22 09:38:12 -07:00
Roland Franssen
3306c70a34 [DI] Cleanup array_key_exists 2016-08-22 08:32:51 -07:00
Roland Franssen
428b5cc6a8 include dynamic services in list of alternatives 2016-08-20 13:46:51 +00:00
Fabien Potencier
7b383a9788 bug #19666 Verify explicitly that the request IP is a valid IPv4 address (nesk)
This PR was squashed before being merged into the 2.7 branch (closes #19666).

Discussion
----------

Verify explicitly that the request IP is a valid IPv4 address

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

Take the following base code (the array is based on [CloudFlare IP Ranges](https://www.cloudflare.com/ips/)):

```php
use Symfony\Component\HttpFoundation\IpUtils;

$ips = [
   "103.21.244.0/22",
   "103.22.200.0/22",
   "103.31.4.0/22",
   "104.16.0.0/12",
   "108.162.192.0/18",
   "131.0.72.0/22",
   "141.101.64.0/18",
   "162.158.0.0/15",
   "172.64.0.0/13",
   "173.245.48.0/20",
   "188.114.96.0/20",
   "190.93.240.0/20",
   "197.234.240.0/22",
   "198.41.128.0/17",
   "199.27.128.0/21",
   "2400:cb00::/32",
   "2405:8100::/32",
   "2405:b500::/32",
   "2606:4700::/32",
   "2803:f800::/32",
   "2c0f:f248::/32",
   "2a06:98c0::/29",
];
```

Before this PR, the following code would have returned `true` instead of the expected `false` value:

```php
IpUtils::checkIp('blablabla', $ips);
```

This due to the `ip2long` function returning `false` for an invalid IP address, thus returning `"00000000000000000000000000000000"` with the following code:

```php
sprintf('%032b', ip2long('blablabla'));
```

To fix this I simply check if the `$requestIp` variable contains a valid IP address.

Commits
-------

17e418c Verify explicitly that the request IP is a valid IPv4 address
2016-08-19 08:01:17 -07:00
Johann Pardanaud
17e418caf0 Verify explicitly that the request IP is a valid IPv4 address 2016-08-19 08:01:16 -07:00
Nicolas Grekas
8f18c3bd13 minor #19674 [HttpKernel] Fix too strict test (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Fix too strict test

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Tests pass?   | yes
| License       | MIT

This test is too strict and prevents adding properties to Data objects for no reason.

Commits
-------

2e7301d [HttpKernel] Fix too strict test
2016-08-19 15:45:43 +02:00
Nicolas Grekas
2e7301dabf [HttpKernel] Fix too strict test 2016-08-19 15:31:18 +02:00
Michele Locati
255c59f670 Disable CLI color for Windows 10 greater than 10.0.10586 2016-08-19 08:41:18 +02:00
Nicolas Grekas
39cd984d7b bug #19663 Exception details break the layout (Dionysis Arvanitis)
This PR was merged into the 2.7 branch.

Discussion
----------

Exception details break the layout

Exception details break the layout

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| License       | MIT

By adding `word-wrap: break-word;` the exception details will wrap inside the block.

Commits
-------

00b4ecb Exception details break the layout
2016-08-18 22:08:23 +02:00
Dionysis Arvanitis
00b4ecb97a Exception details break the layout 2016-08-18 21:55:40 +03:00
Nicolas Grekas
1972a8f906 [HttpKernel] Remove wrong docblock 2016-08-18 14:31:26 +02:00
Fabien Potencier
c5ca5f3ed7 bug #19651 [HttpKernel] Fix HttpCache validation HTTP method (tgalopin)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Fix HttpCache validation HTTP method

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

Commits
-------

1a8a8af [HttpKernel] Fix HttpCache validation HTTP method
2016-08-17 11:31:09 -07:00
Titouan Galopin
1a8a8afdc6 [HttpKernel] Fix HttpCache validation HTTP method 2016-08-17 20:25:22 +02:00
Grégoire Pineau
d80589c2d4 [Debug] Swap dumper services at bootstrap
This commit fix a bug when using debug function too soon.
For example, if you call dump function during kernel::boot() the
dump output will be sent to stderr, even in a web context.

With this patch, the data collector is used by default, so the
dump output is send to the WDT. In a CLI context, if dump is used
too soon, the datacollector will buffer it, and release it at the
end of the script. So in this case everything will be visible by the
end used.
2016-08-17 13:57:44 +02:00
Fabien Potencier
adb7033fc2 bug #19623 [VarDumper] Fix dumping continuations (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[VarDumper] Fix dumping continuations

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

Dumping twice on the same destination shouldn't dump headers again.

Commits
-------

da96719 [VarDumper] Fix dumping continuations
2016-08-16 07:52:15 -07:00
Christian Schmidt
f45da32488 [Routing] Add missing options in docblock 2016-08-16 12:55:04 +02:00
Nicolas Grekas
da96719b94 [VarDumper] Fix dumping continuations 2016-08-16 10:33:51 +02:00
Fabien Potencier
2345ec1210 bug #19549 [HttpFoundation] fixed Request::getContent() reusage bug (1ma)
This PR was squashed before being merged into the 2.7 branch (closes #19549).

Discussion
----------

[HttpFoundation] fixed Request::getContent() reusage bug

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

After calling ```Request::getContent(true)```, subsequent calls to the
same instance method (withouth the ```$asResource``` flag) always returned
```false``` instead of the request body as a plain string.

A unit test already existed to guard against this behaviour (the 'Resource then fetch' case) but it
yielded a false positive because it was comparing ```''``` to ```false``` using
PHPUnit's ```assertEquals``` method instead of ```assertSame```.

For completeness sake I also added the missing usage permutations in
the data provider, which already worked OK.

Commits
-------

c42ac66 [HttpFoundation] fixed Request::getContent() reusage bug
2016-08-15 16:08:50 -07:00
Marcel Hernandez
c42ac660cb [HttpFoundation] fixed Request::getContent() reusage bug 2016-08-15 16:08:46 -07:00
Fabien Potencier
1a059e54cf bug #19373 [Form] Skip CSRF validation on form when POST max size is exceeded (jameshalsall)
This PR was squashed before being merged into the 2.7 branch (closes #19373).

Discussion
----------

[Form] Skip CSRF validation on form when POST max size is exceeded

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

In #19140 the CSRF validation listener was not aware that the POST max size had exceeded, and was adding a form error message that wasn't relevant to the actual error.

This introduces the `ServerParams` utility class into the `CsrfValidationListener` and checks that the POST max size has not been exceeded. If it has then it won't bother trying to validate the CSRF token.

My main concern with this change is that it opens up an attack vector around tokens, but I've encapsulated the request size validation in a single method in `ServerParams` now so that the request handlers are using the same logic.

Commits
-------

289531f [Form] Skip CSRF validation on form when POST max size is exceeded
2016-08-15 15:45:28 -07:00
James Halsall
289531f0d0 [Form] Skip CSRF validation on form when POST max size is exceeded 2016-08-15 15:45:25 -07:00
Fabien Potencier
b405df0925 bug #19541 Fix #19531 [Form] DateType fails parsing when midnight is not a valid time (mbeccati)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix #19531 [Form] DateType fails parsing when midnight is not a valid time

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

Commits
-------

c951bb6 Fix #19531 [Form] DateType fails parsing when midnight is not a valid time
2016-08-13 11:47:46 -07:00
Leo Feyer
4e8bfc65af Enhance the phpDoc return types so IDEs can handle the configuration tree. 2016-08-13 11:45:47 -07:00
Roland Franssen
359204f056 fixes 2016-08-13 11:43:48 -07:00
Nicolas Grekas
a7a2d16511 [Process] Strengthen Windows pipe files opening (again...) 2016-08-11 08:52:50 +02:00
David Maicher
fb36c5a575 [Validator] fixed duplicate constraints with parent class interfaces
This fixes https://github.com/symfony/symfony/issues/19516
2016-08-10 21:49:44 +02:00
dana
4e4c674c09 Console: Fix indentation of Help: section of txt usage help 2016-08-09 06:38:20 -07:00
Fabien Potencier
454b16db88 minor #19468 [Intl] Update ICU data to 57.1 (jakzal)
This PR was squashed before being merged into the 2.7 branch (closes #19468).

Discussion
----------

[Intl] Update ICU data to 57.1

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

I think the only thing that makes sense with ICU is to always be on the latest available version.

Commits
-------

a48c00b [Intl] Update ICU data to 57.1
2016-08-09 06:34:05 -07:00
Jakub Zalas
a48c00ba9c [Intl] Update ICU data to 57.1 2016-08-09 06:33:47 -07:00
Nicolas Grekas
cb6c925798 minor #19476 [Config] Improved test (zomberg)
This PR was merged into the 2.7 branch.

Discussion
----------

[Config] Improved test

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

Commits
-------

456d53a [Config] Improved test
2016-08-09 13:59:32 +02:00
Nicolas Grekas
ba539190c5 bug #19564 Added class existence check if is_subclass_of() fails in compiler passes (SCIF)
This PR was merged into the 2.7 branch.

Discussion
----------

Added class existence check if is_subclass_of() fails in compiler passes

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | no

Backport of #19342 to 2.7 branch

Commits
-------

77adea7 Added class existence check if is_subclass_of() fails in compiler passes
2016-08-09 11:00:18 +02:00
Fabien Potencier
00e2a42d8a minor #19554 [Routing] Reorder assert parameters (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[Routing] Reorder assert parameters

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

The expected value must be the first parameter.

Commits
-------

7f88796 [Routing] Reorder assert parameters
2016-08-06 08:24:04 -07:00
Fabien Potencier
3936c4b22d minor #19534 Add czech translation for Url and Length validator (pulzarraider)
This PR was merged into the 2.7 branch.

Discussion
----------

Add czech translation for Url and Length validator

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

Commits
-------

bfd1644 Add czech translation for Url and Length validator
2016-08-06 08:23:12 -07:00
Fabien Potencier
ec53d79648 minor #19533 Add slovak translation for Url and Length validator (pulzarraider)
This PR was merged into the 2.7 branch.

Discussion
----------

Add slovak translation for Url and Length validator

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

Commits
-------

b29cab3 Add slovak translation for Url and Length validator
2016-08-06 08:21:36 -07:00
Fabien Potencier
4335829d58 minor #19550 Added missing czech validators translation of not expected charset (maryo)
This PR was merged into the 2.7 branch.

Discussion
----------

Added missing czech validators translation of not expected charset

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

Profiler was complaining about using a not translated message so I translated it.
Not sure if bug or feature. The bug label is probably not apropriate, sorry. But I guess it should be merged to all versions.

Commits
-------

7eacae8 Added missing czech validators translation of not expected charset
2016-08-06 08:19:33 -07:00
Guilhem N
7f8879686c [Routing] Reorder assert parameters 2016-08-06 17:00:05 +02:00
maryo
7eacae8817 Added missing czech validators translation of not expected charset 2016-08-05 19:33:08 +02:00
Matteo Beccati
c951bb6e97 Fix #19531 [Form] DateType fails parsing when midnight is not a valid time 2016-08-05 12:25:39 +02:00
Ben Johnson
4348f4be99 Workaround another buggy PHP warning
Added error-suppression to the `is_executable($path)` call, too, per the bug noted just above.

The cited issue manifests as such without it:

```
ErrorException in ExecutableFinder.php line 63:
is_executable(): open_basedir restriction in effect. File(/usr/share/php) is not within the allowed path(s): (/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/usr/local/zend/var/zray/extensions:/usr/local/zend/share:/usr/local/zend/var/plugins)
```
2016-08-04 13:11:16 -04:00
Andrej Hudec
bfd1644343 Add czech translation for Url and Length validator 2016-08-04 17:08:51 +02:00
Andrej Hudec
b29cab3547 Add slovak translation for Url and Length validator 2016-08-04 17:02:35 +02:00
Nicolas Grekas
1976b8bc5d minor #19512 [HttpKernel] Fix variable conflicting name (tgalopin)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Fix variable conflicting name

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

Simply fix a conflicting name (`$bundle` is used for the foreach on line 466 and 476). It works for the moment only because there is nothing after the second foreach inside the first.

Commits
-------

9ac9f55 [HttpKernel] Fix variable conflicting name
2016-08-03 08:46:02 +02:00
Nicolas Grekas
5f59927307 bug #19510 [Process] Fix double-fread() when reading unix pipes (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] Fix double-fread() when reading unix pipes

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

While looking at the blackfire profile of a `composer install`, I was able to reduce the number of calls to `fread` from 90k to 60k using this patch (and from 60k to <1k with https://github.com/composer/composer/pull/5569 but that's another story).

In fact, we should continue reading only if there might be something next, which won"t be the case if the buffer has not been filled.

Commits
-------

ac17617 [Process] Fix double-fread() when reading unix pipes
2016-08-03 08:45:31 +02:00
Titouan Galopin
9ac9f555a6 [HttpKernel] Fix variable conflicting name 2016-08-02 17:33:57 +02:00
Nicolas Grekas
ac17617ac0 [Process] Fix double-fread() when reading unix pipes 2016-08-02 16:08:20 +02:00
Nicolas Grekas
2bb2b9b35f [Process] Fix AbstractPipes::write() for a situation seen on HHVM (at least) 2016-08-02 12:55:32 +02:00
Dawid Nowak
d67f090003 SecurityBundle:BasicAuthenticationListener: removed a default argument on getting a header value
it's unnecessary.
2016-08-01 17:57:55 +02:00
Nicolas Grekas
45dac4b44e minor #19497 [Validator] Fix dockblock typehint in XmlFileLoader (tgalopin)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Fix dockblock typehint in XmlFileLoader

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

Commits
-------

92b3ef4 [Validator] Fix dockblock typehint in XmlFileLoader
2016-08-01 14:08:03 +02:00
Titouan Galopin
92b3ef4cb2 [Validator] Fix dockblock typehint in XmlFileLoader 2016-08-01 12:57:31 +02:00
Fabien Potencier
2bdf12e42b bumped Symfony version to 2.7.17 2016-07-30 04:46:44 -04:00
Fabien Potencier
1c32449ae6 updated VERSION for 2.7.16 2016-07-30 04:15:38 -04:00
Vyacheslav Pavlov
774c984863 Minor fixes 2016-07-30 03:17:26 -04:00
Vyacheslav Pavlov
456d53acc9 [Config] Improved test 2016-07-29 15:20:41 +03:00
Fabien Potencier
bdfc2aa652 minor #19446 [Console] Overcomplete argument exception message tweak. (SpacePossum)
This PR was squashed before being merged into the 2.7 branch (closes #19446).

Discussion
----------

[Console] Overcomplete argument exception message tweak.

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

Updates the exception message when to many arguments are passed.
From;
```php
'Too many arguments.'
```
To:
```php
'No argument expected, got "foo".'
// or
'Too many arguments, expected arguments "foo".'
// or
'Too many arguments, expected arguments "foo, bar".'
// ... turtles all the way down
```

Commits
-------

7af59cd [Console] Overcomplete argument exception message tweak.
2016-07-28 13:56:28 -04:00
SpacePossum
7af59cdf86 [Console] Overcomplete argument exception message tweak. 2016-07-28 13:56:22 -04:00
Fabien Potencier
382ad65372 bug #19470 undefined offset fix (#19406) (ReenExe)
This PR was squashed before being merged into the 2.7 branch (closes #19470).

Discussion
----------

undefined offset fix (#19406)

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

Commits
-------

9813888 undefined offset fix (#19406)
2016-07-28 12:53:57 -04:00
ReenExe
9813888a4f undefined offset fix (#19406) 2016-07-28 12:53:55 -04:00
Christophe Coevoet
42ea173247 minor #19459 [EventDispatcher] Removed unused variable (zomberg)
This PR was merged into the 2.7 branch.

Discussion
----------

[EventDispatcher] Removed unused variable

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

Commits
-------

891e2ea [EventDispatcher] Removed unused variable
2016-07-28 13:09:20 +02:00
Vyacheslav Pavlov
891e2ea17b [EventDispatcher] Removed unused variable 2016-07-28 10:50:15 +03:00
Nicolas Grekas
a8a9923260 bug #19300 [HttpKernel] Use flock() for HttpCache's lock files (mpdude)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Use flock() for HttpCache's lock files

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | no
| Fixed tickets | #16777, #15813 and #16312 are also related
| License       | MIT
| Doc PR        |

When a PHP process crashes or terminates (maybe the OOM killer kicks in or other bad things ™️ happen) while the `HttpCache` holds a `.lck` file, that lock file may not get `unlink()`ed.

The result is that other requests trying to access this cache entry will see a few seconds delay while waiting for the lock; they will eventually continue but send 503 status codes along with the response. The sudden buildup of PHP processes caused by the additional delay may cause further problems (sudden load increase).

As `LockHandler` is using `flock()`-based locking, locks should be released by the OS when the PHP process terminates.

I wrote this as bugfix against 2.7 because every once in a while I encounter situations (not always reproducible) where `.lock` files are left over and keep the cache locked.

Commits
-------

2668edd [HttpKernel] Use flock() for HttpCache's lock files
2016-07-28 09:16:08 +02:00
Nicolas Grekas
f9ba34f871 bug #19428 [Process] Fix write access check for pipes on Windows (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] Fix write access check for pipes on Windows

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

Commits
-------

66e694e [Process] Fix write access check for pipes on Windows
2016-07-28 08:53:02 +02:00
Alexander Zhuravlev
77adea7110 Added class existence check if is_subclass_of() fails in compiler passes 2016-07-27 22:26:20 +12:00
Nicolas Grekas
66e694ed57 [Process] Fix write access check for pipes on Windows 2016-07-26 10:11:15 +02:00
Matthias Pigulla
2668edd05b [HttpKernel] Use flock() for HttpCache's lock files 2016-07-26 09:56:53 +02:00
Nicolas Grekas
eeaa0c7fd1 minor #19389 [Console] Application update PHPDoc of add and register methods (SpacePossum)
This PR was squashed before being merged into the 2.7 branch (closes #19389).

Discussion
----------

[Console] Application update PHPDoc of add and register methods

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

The [PHPDoc](https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Console/Application.php#L354) states the method will always return a command, but it doesn't. Since [Application::register](https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Console/Application.php#L328) returns the result of `add` directly is also doesn't always return the command (as its PHPDoc states).

Commits
-------

6f0474f [Console] Application update PHPDoc of add and register methods
2016-07-26 06:44:12 +02:00
SpacePossum
6f0474f9a6 [Console] Application update PHPDoc of add and register methods 2016-07-26 06:44:10 +02:00
Nicolas Grekas
4af4878e3d minor #19399 [Config] Extra tests for Config component (zomberg)
This PR was squashed before being merged into the 2.7 branch (closes #19399).

Discussion
----------

[Config] Extra tests for Config component

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

Commits
-------

d0f4434 [Config] Extra tests for Config component
2016-07-26 06:42:31 +02:00
Vyacheslav Pavlov
d0f4434c4e [Config] Extra tests for Config component 2016-07-26 06:42:29 +02:00
Vyacheslav Pavlov
c41aa03c48 Fixed bugs in names of classes and methods. 2016-07-26 06:40:54 +02:00
Nicolas Grekas
c4069a4016 minor #19392 [BrowserKit] Added test for followRedirect method (POST method) (zomberg)
This PR was squashed before being merged into the 2.7 branch (closes #19392).

Discussion
----------

[BrowserKit] Added test for followRedirect method (POST method)

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

Test covers 'else' branches in these conditions:
```php
if (in_array($this->internalResponse->getStatus(), array(302, 303))) {
    $method = 'get';
    $files = array();
    $content = null;
} else {
    $method = $request->getMethod();
    $files = $request->getFiles();
    $content = $request->getContent();
}

if ('get' === strtolower($method)) {
    // Don't forward parameters for GET request as it should reach the redirection URI
    $parameters = array();
} else {
    $parameters = $request->getParameters();
}
```

Commits
-------

2ace5d8 [BrowserKit] Added test for followRedirect method (POST method)
2016-07-25 18:30:57 +02:00
Vyacheslav Pavlov
2ace5d812c [BrowserKit] Added test for followRedirect method (POST method) 2016-07-25 18:30:50 +02:00
Nicolas Grekas
f6a77a1a3e bug #19397 [2.7] [HttpFoundation] HttpCache refresh stale responses containing an ETag (maennchen)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7] [HttpFoundation] HttpCache refresh stale responses containing an ETag

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

This PR is the replacement of #19391, which points at the wrong branch.

Commits
-------

96df6b9 [HttpFoundation] HttpCache refresh stale responses containing an ETag
2016-07-25 18:30:07 +02:00
Jakub Zalas
7b117d3320 [BrowserKit] Uppercase the "GET" method in redirects 2016-07-25 14:54:45 +01:00
Jonatan Männchen
96df6b984c [HttpFoundation] HttpCache refresh stale responses containing an ETag 2016-07-20 22:30:20 +00:00
Nicolas Grekas
07467ed3a3 Fix PHP 7.1 related failures 2016-07-19 10:44:18 +02:00
Nicolas Grekas
d422939f6c [VarDumper] Fix for 7.1 2016-07-18 14:55:17 +02:00
Nicolas Grekas
56549e7a70 [VarDumper] Fix dumping jsons casted as arrays 2016-07-16 15:16:34 +02:00
Fabien Potencier
d303b9dffe minor #19343 PassConfig::getMergePass is not an array (aschempp)
This PR was squashed before being merged into the 2.7 branch (closes #19343).

Discussion
----------

PassConfig::getMergePass is not an array

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

Just a minor glitch my IDE noticed :-)

Commits
-------

edbefac PassConfig::getMergePass is not an array
2016-07-14 11:24:46 +02:00
Andreas Schempp
edbefacdd1 PassConfig::getMergePass is not an array 2016-07-14 11:24:45 +02:00
Fabien Potencier
482e185daf Revert "bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)"
This reverts commit a0cdcb0ffb, reversing
changes made to 9c8a3e9563.
2016-07-13 12:53:11 +02:00
Christophe Coevoet
e04136524c Fix the retrieval of the last username when using forwarding 2016-07-11 11:55:50 +02:00
Kévin Dunglas
a3fd991c4b [Yaml] Fix PHPDoc of the Yaml class 2016-07-11 09:20:55 +02:00
Fabien Potencier
500c2cd694 bug #19321 [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods (dunglas)
This PR was squashed before being merged into the 2.7 branch (closes #19321).

Discussion
----------

[HttpFoundation] Add OPTIONS and TRACE to the list of safe methods

| 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

According to [RFC 7231](https://tools.ietf.org/html/rfc7231#section-8.1.3) `OPTIONS` and `TRACE` are safe methods.

Commits
-------

1404607 [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods
2016-07-10 11:40:50 +02:00
Kévin Dunglas
1404607072 [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods 2016-07-10 11:40:48 +02:00
Fabien Potencier
8b6d74e1e7 bug #19317 [BrowserKit] Update Client::getAbsoluteUri() for query string only URIs (georaldc)
This PR was merged into the 2.7 branch.

Discussion
----------

[BrowserKit] Update Client::getAbsoluteUri() for query string only URIs

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

This PR allows BrowserKit to treat a value containing only query string parameters the same way anchor/hash values are treated when passed as a URI argument to the getAbsoluteUri() method. Helps when encountering sites that force a redirect with a location header value containing only a query string.

Commits
-------

965408f Update getAbsoluteUri() for query string uris
2016-07-10 11:39:24 +02:00
Nicolas Grekas
7c39ac1350 bug #19298 [ClassLoader] Fix declared classes being computed when not needed (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[ClassLoader] Fix declared classes being computed when not needed

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

Commits
-------

d513eae [ClassLoader] Fix declared classes being computed when not needed
2016-07-10 09:26:25 +02:00
georaldc
965408fd2d Update getAbsoluteUri() for query string uris
Apply same rules to query string only URIs as what's being used for URIs containing only hash/anchor values
2016-07-08 11:46:34 -07:00
Fabien Potencier
b7ed32a36b bug #19316 [Validator] Added additional MasterCard range to the CardSchemeValidator (Dennis Væversted)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Added additional MasterCard range to the CardSchemeValidator

From October 2016 MasterCard will introduce a new card range, 222100 through 272099.
See: https://www.mctestcards.com/ (click the help in top right)
This implements the additional regex for validation to succeed, and some additional unit tests for this new range.

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

Commits
-------

4d68f56 [Validator] Added additional MasterCard range to the CardSchemeValidator
2016-07-08 12:15:13 +02:00
Fabien Potencier
b795cfadcb bug #19290 [HttpKernel] fixed internal subrequests having an if-modified-since-header (MalteWunsch)
This PR was squashed before being merged into the 2.7 branch (closes #19290).

Discussion
----------

[HttpKernel] fixed internal subrequests having an if-modified-since-header

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

As the InlineFragmentRenderer has no access to a cached copy of a subrequest's target and hence couldn't handle a response with a HTTP status code of 304 (not modified), it makes no sense to send an if-not-modified-since header.

Commits
-------

e90038c [HttpKernel] fixed internal subrequests having an if-modified-since-header
2016-07-08 12:11:06 +02:00
Malte Wunsch
e90038c52e [HttpKernel] fixed internal subrequests having an if-modified-since-header 2016-07-08 12:11:03 +02:00
Dennis Væversted
4d68f56242 [Validator] Added additional MasterCard range to the CardSchemeValidator
From October 2016 MasterCard will introduce a new card range,
222100 through 272099.
See: https://www.mctestcards.com/ (click the help in top right)
Implements unit tests and validation for this new card range.
2016-07-08 11:49:25 +02:00
Tobias Nyholm
6344ccd7b1 Make the exception message more clear. 2016-07-08 08:55:07 +02:00
Fabien Potencier
41d6758ee5 bug #19306 [Form] fixed bug - name in ButtonBuilder (cheprasov)
This PR was squashed before being merged into the 2.7 branch (closes #19306).

Discussion
----------

[Form] fixed bug - name in ButtonBuilder

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

**Bug:**

For any scalar of name, expression `empty($name) && 0 != $name` is never true,
and as result - empty string ('') is allowed.

**Examples:**

```php
$name = ''; var_dump(empty($name) && 0 != $name); // false
$name = '0'; var_dump(empty($name) && 0 != $name); // false
$name = null; var_dump(empty($name) && 0 != $name); // false
$name = false; var_dump(empty($name) && 0 != $name); // false
$name = 0; var_dump(empty($name) && 0 != $name); // false
```

Commits
-------

f507023 [Form] fixed bug - name in ButtonBuilder
2016-07-08 08:48:29 +02:00
Alexander Cheprasov
f507023e50 [Form] fixed bug - name in ButtonBuilder 2016-07-08 08:48:27 +02:00
Nicolas Grekas
d513eae29e [ClassLoader] Fix declared classes being computed when not needed 2016-07-06 10:59:52 +02:00
Fabien Potencier
0259bedec1 bug #19267 [Validator] UuidValidator must accept a Uuid constraint. (hhamon)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] UuidValidator must accept a Uuid constraint.

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

Commits
-------

ff8bb4b [Validator] UuidValidator must accept a Uuid constraint.
2016-07-04 14:22:45 +02:00
Fabien Potencier
5d6f6aa7c7 removed @since 2016-07-04 07:27:33 +02:00
Fabien Potencier
4b9b6fb2d5 minor #19269 [Validator] [Security] Remove unrelevant comments in Security and Validator components (hhamon)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] [Security] Remove unrelevant comments in Security and Validator components

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

Commits
-------

2cec4a6 Remove and change unrelevant comments in Validator and Security components.
2016-07-02 18:12:19 +02:00
Hugo Hamon
2cec4a61ef Remove and change unrelevant comments in Validator and Security components. 2016-07-01 22:22:57 +02:00
Hugo Hamon
ff8bb4b5f2 [Validator] UuidValidator must accept a Uuid constraint. 2016-07-01 21:12:56 +02:00
Hugo Hamon
3cc2f10541 [Validator] make UuidValidator class formatting consistent. 2016-07-01 20:48:13 +02:00
Fabien Potencier
81b0cc7c72 fixed CS 2016-07-01 09:20:22 +02:00
Ben Oman
ebbc7068f9 Fix for #19183 to add support for new PHP MongoDB extension in sessions. 2016-07-01 08:50:26 +02:00
Fabien Potencier
6cdb090dd0 bumped Symfony version to 2.7.16 2016-06-30 17:39:56 +02:00
Fabien Potencier
ec1ff36e58 updated VERSION for 2.7.15 2016-06-30 17:14:22 +02:00
Fabien Potencier
94773ad4ad minor #19243 Fixed typos in the expectedException annotations (GrahamCampbell)
This PR was squashed before being merged into the 2.7 branch (closes #19243).

Discussion
----------

Fixed typos in the expectedException annotations

| 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

PHPUnit ignores any imports when resolving these. You must always reference the FQCN.

Commits
-------

b36de36 Fixed typos in the expectedException annotations
2016-06-30 13:18:56 +02:00
Graham Campbell
b36de36697 Fixed typos in the expectedException annotations 2016-06-30 13:18:54 +02:00
Magnus Nordlander
db841018dc [HttpKernel] Add listener that checks when request has both Forwarded and X-Forwarded-For 2016-06-30 08:49:13 +02:00
Nicolas Grekas
1f00b55373 [HttpKernel] Move conflicting origin IPs handling to catch block 2016-06-30 08:49:13 +02:00
Nicolas Grekas
9d3ae85301 [HttpKernel] Inline ValidateRequestListener logic into HttpKernel 2016-06-29 12:24:37 +02:00
Jules Pietri
f809f3e340 fixed HttpKernel dependencies after #18688 2016-06-29 10:18:30 +02:00
Fabien Potencier
2d3723007d bug #18688 [HttpFoundation] Warning when request has both Forwarded and X-Forwarded-For (magnusnordlander)
This PR was squashed before being merged into the 2.7 branch (closes #18688).

Discussion
----------

[HttpFoundation] Warning when request has both Forwarded and X-Forwarded-For

| 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        | symfony/symfony-docs#6526

Emit a warning when a request has both a trusted Forwarded header and a trusted X-Forwarded-For header, as this is most likely a misconfiguration which causes security issues.

Commits
-------

ee8842f [HttpFoundation] Warning when request has both Forwarded and X-Forwarded-For
2016-06-29 09:01:56 +02:00
Magnus Nordlander
ee8842fedb [HttpFoundation] Warning when request has both Forwarded and X-Forwarded-For 2016-06-29 09:01:55 +02:00
Fabien Potencier
96f32b6512 bug #19173 [Console] Decouple SymfonyStyle from TableCell (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #19173).

Discussion
----------

[Console] Decouple SymfonyStyle from TableCell

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

Alternative approach, ie BC, for #19136 (i prefer that one though, as it also _fixes_ #19123 )

Commits
-------

51f59d6 [Console] Decouple SymfonyStyle from TableCell
2016-06-29 07:44:56 +02:00
Roland Franssen
51f59d6f62 [Console] Decouple SymfonyStyle from TableCell 2016-06-29 07:44:54 +02:00
Fabien Potencier
b111d37594 minor #19198 removed dots at the end of @param and @return (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

removed dots at the end of @param and @return

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

For phpdocs, we only add dots for sentences like description, but not for @param and @return for instance. This PR fixes this issue.

This should probably be added to PHP-CS-Fixer as well (/cc @phansys @keradus).

Commits
-------

554303e removed dots at the end of @param and @return
2016-06-29 07:22:22 +02:00
Fabien Potencier
554303e339 removed dots at the end of @param and @return 2016-06-28 08:24:06 +02:00
Fabien Potencier
7dbd849d0f bug #17822 [WIP] [2.7] [Form] fix empty_data option in expanded ChoiceType (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[WIP] [2.7] [Form] fix `empty_data` option in expanded `ChoiceType`

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

It might happen because in `Form::submit()` the handling of `empty_data` [line 597](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Form.php#L597) comes after each child of a compound field has been submitted [line 549](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Form.php#L549).

So when `ChoiceType` is `expanded`, `compound` option is defaulted to `true` and it passes its empty submitted data to its children before handling its own `empty_data` option.

This PR uses the listener already added in `ChoiceType` only when `expanded` is true to handle `empty_data` at `PRE_SUBMIT` [line 539](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Form.php#L539).

- [ ] Fix FQCN in tests for 2.8
- [ ] Remove `choices_as_values` in tests for 3.0

Commits
-------

d479adf [Form] fix `empty_data` option in expanded `ChoiceType`
2016-06-28 08:17:04 +02:00
Javier Spagnoletti
d250b1d0f0 [CS] Respect PSR2 4.2
| 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        |

http://www.php-fig.org/psr/psr-2/#4-2-properties
2016-06-25 13:30:09 -03:00
Jules Pietri
d479adf073 [Form] fix empty_data option in expanded ChoiceType 2016-06-25 16:15:36 +02:00
Fabien Potencier
35f32ebe12 [Console] removed unneeded private methods 2016-06-24 07:18:49 +02:00
Fabien Potencier
448a390970 bug #19134 Distinguish between first and subsequent progress bar displays (rquadling)
This PR was merged into the 2.7 branch.

Discussion
----------

Distinguish between first and subsequent progress bar displays

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19133
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Fixes https://github.com/symfony/symfony/issues/19133

When a progress bar is first displayed, if it is multi-line, previously output lines are erased, depending upon the number of lines in the progress bar.

This patch fixes that be distinguishing between the first display (no erasing of previous output) and subsequent displays of the progress bar.

Commits
-------

3871e1a Differentiate between the first time a progress bar is displayed and subsequent times
2016-06-23 15:30:31 +02:00
Christian Flothmann
81a6d8ed88 explicitly forbid e-mail validator 2.0 or higher 2016-06-22 23:25:31 +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
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
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
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
7cc3ca59d0 fixed CS 2016-06-20 18:47:20 +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
Nicolas Grekas
2fbc2008e5 [HttpKernel] Dont close the output stream in debug 2016-06-20 10:21:56 +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
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
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
Thomas Landauer
9e7b3479dc Fixed typo in PHPDoc 2016-06-16 20:42:35 +02:00
Nicolas Grekas
ff1f5f80d2 [HttpFoundation] Fix UPSERT for PgSql >= 9.5 2016-06-15 12:17:39 +02:00
Jules Pietri
b91008fb57 [Form] fixed DateTime transformers 2016-06-15 09:21:32 +02:00
Fabien Potencier
d7e466ac23 bug #18732 [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't (nykopol)
This PR was squashed before being merged into the 2.7 branch (closes #18732).

Discussion
----------

[PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't

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

When you try do define a manyToMany association but you don't give an array or \Traversable, the raised exception say that some methods are missing while they don't. This PR check if the adder and setter methods exists and if so, give a exception that pointing on the real problem.

Commits
-------

c46519b [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't
2016-06-15 09:08:06 +02:00
Johan DESMYTER
c46519b40b [PropertyAccess][DX] Enhance exception that say that some methods are missing if they don't 2016-06-15 09:08:04 +02:00
Fabien Potencier
347cd8712e bug #19048 [HttpFoundation] Use UPSERT for sessions stored in PgSql >= 9.5 (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpFoundation] Use UPSERT for sessions stored in PgSql >= 9.5

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

Commits
-------

9569c74 [HttpFoundation] Use UPSERT for sessions stored in PgSql >= 9.5
2016-06-14 11:41:37 +02:00
Nicolas Grekas
9569c7453c [HttpFoundation] Use UPSERT for sessions stored in PgSql >= 9.5 2016-06-14 11:40:21 +02:00
Ahmed Tailouloute
37fac3e44f [Console] fixed PHPDoc 2016-06-14 10:22:25 +02:00
Fabien Potencier
ad1ffc5e95 minor #19035 [Console] added explanation of messages usage in a progress bar (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] added explanation of messages usage in a progress bar

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

The intent of progress bar messages is currently wrongly documented. This PR updates the phpdoc to hopefully better describe the usage of such messages.

So, basically, messages are a way to add dynamic information in the progress bar; information that cannot be computed by the progress bar (like for all other placeholders).

Commits
-------

d92f3ea [Console] added explanation of messages usage in a progress bar
2016-06-13 08:28:47 +02:00
Fabien Potencier
3f192dccdc bug #18915 [DependencyInjection] force enabling the external XML entity loaders (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] force enabling the external XML entity loaders

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

Commits
-------

12b5509 force enabling the external XML entity loaders
2016-06-13 08:25:24 +02:00
Fabien Potencier
11f303994c bug #19020 [Form] Fixed collapsed choice attributes (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fixed collapsed choice attributes

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

Commits
-------

445dcc8 [Form] Fixed collapsed choice attributes
2016-06-13 07:29:09 +02:00
Jules Pietri
445dcc8ae2 [Form] Fixed collapsed choice attributes 2016-06-13 01:34:04 +02:00
Fabien Potencier
d92f3ea29e [Console] added explanation of messages usage in a progress bar 2016-06-12 09:56:51 +02:00
Christian Flothmann
12b5509d8b force enabling the external XML entity loaders 2016-06-11 12:13:28 +02:00
Christian Flothmann
da7fc36a43 [Yaml] properly count skipped comment lines 2016-06-11 11:53:36 +02:00
Konstantin Myakshin
2c99a0a7df Added progressive jpeg to mime types guesser 2016-06-08 15:06:30 +02:00
Fabien Potencier
1d148bd39e minor #18896 [Console] [SymfonyStyle] Replace long word wrapping test to directly test output (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] [SymfonyStyle] Replace long word wrapping test to directly test output

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

This [line](https://github.com/symfony/symfony/pull/18879/files#diff-d3625f2548a3b329058ca5a0f5aa57feR60) should not have been changed in order to the test to pass. I assume the test was flawed at first, so I suggest to simply test the output as we did for other ones.

Ping @chalasr

Commits
-------

b78fff4 [Console] [SymfonyStyle] Replace long word wrapping test to directly test output
2016-06-08 13:41:03 +02:00
Paráda József
d83e3463ba [Yaml] Fix wrong line number when comments are inserted in the middle of a block. 2016-06-08 13:30:01 +02:00
Peter Rehm
5661d52ace Fixed singular of committee 2016-06-08 13:22:53 +02:00
Fabien Potencier
b849a8637a bumped Symfony version to 2.7.15 2016-06-06 17:55:40 +02:00
Fabien Potencier
c5a7f9fe26 updated VERSION for 2.7.14 2016-06-06 17:23:26 +02:00
Jakub Zalas
5579d86454 [BrowserKit] Bump dom-crawler minimum version requirement
The BrowserKit Client will not work with DomCrawler 2.0 if the CssSelector component is not installed.
2016-06-06 16:48:46 +02:00
Alexander Obuhovich
73b812e3a8 Make one call to "OutputInterface::write" method per table row 2016-06-06 16:41:06 +02:00
Nicolas Grekas
2e938491d6 minor #18979 [HttpKernel] Fix context dependent test (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Fix context dependent test

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

Class `Foo` exists when the ClassLoader component is tested alongside with HttpKernel

Commits
-------

065dee8 [HttpKernel] Fix context dependent test
2016-06-06 14:26:28 +02:00
Nicolas Grekas
065dee8525 [HttpKernel] Fix context dependent test 2016-06-06 14:20:11 +02:00
Nicolas Grekas
9fc48b8bb2 [Debug] Fix context dependent test 2016-06-06 13:49:15 +02:00
Nicolas Grekas
bf3a2c0abd @throws annotations should go after @return 2016-06-06 13:03:51 +02:00
Nicolas Grekas
cb850fef26 Fix merge 2016-06-06 11:00:08 +02:00
Fabien Potencier
011d2dcd26 Merge branch '2.3' into 2.7
* 2.3:
  updated VERSION for 2.3.42
  update CONTRIBUTORS for 2.3.42
  updated CHANGELOG for 2.3.42
  Revert "bug #18908 [DependencyInjection] force enabling the external XML entity loaders (xabbuh)"
  Partial revert of previous PR
  [DependencyInjection] Skip deep reference check for 'service_container'
  Catch \Throwable
  [Serializer] Add missing @throws annotations
  Fix for #18843
  force enabling the external XML entity loaders
  Removed UTC specification with timestamp
2016-06-06 10:55:42 +02:00
Nicolas Grekas
a004fc7526 minor #18932 Improve memory efficiency (Dword123)
This PR was merged into the 2.7 branch.

Discussion
----------

Improve memory efficiency

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

This avoids concatenating `$message` and `PHP_EOL` (if necessary) as a new value, greatly improving memory efficiency for large `$message`s.

Commits
-------

c1df9f2 Improve memory efficiency
2016-06-03 13:01:18 +02:00
Nicolas Grekas
c4149a40fb minor #18947 Run an uptodate version of HHVM on Travis (stof)
This PR was merged into the 2.7 branch.

Discussion
----------

Run an uptodate version of HHVM on Travis

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

Using the Trusty infrastructure allows running an uptodate version of HHVM rather than running the latest version supporting Precise, which is very old.
It relies on an undocumented feature of the Travis config file, namely the fact that ``matrix.include`` actually allows to overwrite everything from the config file (it is merged with the main config), even though the Travis linter complains about it. I think it is fine to use this and to replace it with an official approach once there is one.

Refs #18922

Commits
-------

e6956c9 Skip some tests on HHVM due to a PHPunit bug
e041da0 Use the Trusty Travis infrastructure for HHVM builds
2016-06-03 10:03:59 +02:00
Nicolas Grekas
574f4e4147 [appveyor] Ignore STATUS_HEAP_CORRUPTION errors on Windows 2016-06-03 09:48:37 +02:00
Christophe Coevoet
e6956c9bfc Skip some tests on HHVM due to a PHPunit bug 2016-06-02 11:40:24 +02:00
GeLo
c483a0f928 [Form] Consider a violation even if the form is not submitted 2016-06-01 18:00:24 +02:00
Dword123
c1df9f210e Improve memory efficiency
This avoids concatenating `$message` and `PHP_EOL` (if necessary) as a new value, greatly improving memory efficiency for large `$message`s.
2016-06-01 13:20:21 +02:00
Fabien Potencier
7143b2974c updated VERSION for 2.3.42 2016-05-30 10:41:10 +02:00
Nicolas Grekas
91635a8054 Revert "bug #18908 [DependencyInjection] force enabling the external XML entity loaders (xabbuh)"
This reverts commit 44f6f89308, reversing
changes made to 57d6053822.
2016-05-30 10:31:06 +02:00
Nicolas Grekas
44f6f89308 bug #18908 [DependencyInjection] force enabling the external XML entity loaders (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] force enabling the external XML entity loaders

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

Commits
-------

142b1a4 force enabling the external XML entity loaders
2016-05-30 10:25:13 +02:00
Nicolas Grekas
57d6053822 bug #18893 [DependencyInjection] Skip deep reference check for 'service_container' (RobertMe)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] Skip deep reference check for 'service_container'

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

The "hasReference" check when dumping the container fails in the case where a service has a method call which includes a reference to a private/inlined service when either that service, or a dependency of it, references the service_container. This because service_container isn't defined while it still tries to check the references of it. So the service_container must be skipped in this case, this shouldn't break anything as the service_container doesn't reference any services, and thus can't reference the service which it is checking for.

Commits
-------

6f36733 [DependencyInjection] Skip deep reference check for 'service_container'
2016-05-30 10:21:17 +02:00
Robert Meijers
6f3673364e [DependencyInjection] Skip deep reference check for 'service_container'
Deep checks on whether a service references another service need to
exclude the 'service_container' service as it doesn't exist. Without this
dumping the container will fail if a service definition references an
inlined service which has a direct or indirect dependency to the
service_container.
2016-05-30 10:16:14 +02:00
Nicolas Grekas
a60c3551b0 bug #18812 Catch \Throwable (fprochazka)
This PR was squashed before being merged into the 2.3 branch (closes #18812).

Discussion
----------

Catch \Throwable

| Q             | A
| ------------- | ---
| Branch?       | 2.3, 2.7, 2.8, 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

Related symfony/symfony#18765, symfony/symfony#15949

Commits
-------

893cf00 Catch \Throwable
2016-05-30 10:14:44 +02:00
Filip Procházka
893cf00a52 Catch \Throwable 2016-05-30 10:14:41 +02:00
Nicolas Grekas
0cf017e568 bug #18821 [2.3][Form] Removed UTC specification with timestamp (francisbesset)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Form] Removed UTC specification with timestamp

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

The function `date_parse()` indicates a warning if a timezone is used with the timestamp: `Double timezone specification`. I removed the UTC specification and this time it's more faster!

Commits
-------

0d14aac Removed UTC specification with timestamp
2016-05-30 10:13:41 +02:00
Nicolas Grekas
c58513457c minor #18854 [Serializer] Add missing @throws annotations (theofidry)
This PR was squashed before being merged into the 2.3 branch (closes #18854).

Discussion
----------

[Serializer] Add missing @throws annotations

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

Commits
-------

b73400d [Serializer] Add missing @throws annotations
2016-05-30 10:12:16 +02:00