Commit Graph

13212 Commits

Author SHA1 Message Date
Guilliam Xavier
3f6e37efe6 Fix copy-paste in PHPDoc comment text 2016-03-24 10:50:31 +01:00
Christian Flothmann
a45b93d423 [2.7] fix mocking of some methods 2016-03-24 10:06:43 +01:00
Christian Flothmann
542cf6b046 [2.3] fix mocking of some methods 2016-03-23 22:36:43 +01:00
Tobias Schultze
1ef2edf4b4 [Routing] add query param if value is different from default 2016-03-23 18:41:29 +01:00
Nicolas Grekas
c5dbb1d9b6 Merge branch '2.3' into 2.7
* 2.3:
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
2016-03-23 13:40:00 +01:00
Nicolas Grekas
bf465eb6db [travis] Upgrade phpunit wrapper & hirak/prestissimo 2016-03-23 13:34:50 +01:00
Arjen van der Meijden
b3da6a11a7 [Routing] Don't needlessly execute strtr's as they are fairly expensive 2016-03-22 21:13:27 +01:00
Nicolas Grekas
8a52fcdbff [PropertyAccess] Fix isPropertyWritable not using the reflection cache 2016-03-22 10:40:06 +01:00
Nicolas Grekas
cb1c87ac5f [PropertyAccess] Backport fixes from 2.7 2016-03-22 10:19:04 +01:00
Nicolas Grekas
86c0a17721 Merge branch '2.3' into 2.7
* 2.3:
  [Validator] use correct term for a property in docblock (not "option")
  [PropertyAccess] Remove most ref mismatches to improve perf
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php
	src/Symfony/Component/PropertyAccess/PropertyPath.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
	src/Symfony/Component/Validator/Constraints/EmailValidator.php
2016-03-22 09:55:46 +01:00
Fabien Potencier
d01a10651b bug #18224 [PropertyAccess] Remove most ref mismatches to improve perf (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[PropertyAccess] Remove most ref mismatches to improve perf

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

This PR is for PHP5 where ref mismatches is a perf pain: it removes all ref mismatches along the "getValue" path, and keeps only the required ones on the "setValue" path.

Commits
-------

72940d7 [PropertyAccess] Remove most ref mismatches to improve perf
2016-03-21 09:49:16 -07:00
Oliver Hoff
9828f23290 bug #17460 [DI] fix ambiguous services schema 2016-03-21 09:24:44 +01:00
Miroslav Sustek
e38d954c59 [Validator] use correct term for a property in docblock (not "option") 2016-03-18 21:39:03 +01:00
Tobias Schultze
85f5e0138d [Routing] small refactoring for scheme requirement 2016-03-18 19:55:39 +01:00
Nicolas Grekas
72940d7588 [PropertyAccess] Remove most ref mismatches to improve perf 2016-03-18 15:37:16 +01:00
Fabien Potencier
11bb865238 bug #18210 [PropertyAccess] Throw an UnexpectedTypeException when the type do not match (dunglas, nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[PropertyAccess] Throw an UnexpectedTypeException when the type do not match

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

Made in coordination with @dunglas,
Diff best viewed [ignoring whitspaces](https://github.com/symfony/symfony/pull/18210/files?w=1).

Quoting #18032:

> it appears that the current implementation is error prone because it throws a `\TypeError` that is an `Error` in PHP 7 but a regular `Exception` in PHP 5 because it uses the Symfony polyfill.
Programs wrote in PHP 5 and catching all exceptions will catch this "custom"  `\TypeError ` but not those wrote in PHP 7. It can be very hard to debug.

> In this alternative implementation:

> * catching type mismatch is considered a bug fix and applied to Symfony 2.3
> * for every PHP versions, a domain exception is thrown

Commits
-------

5fe2b06 [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
10c8d5e [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
2016-03-18 07:09:03 +01:00
Fabien Potencier
a5d941479e minor #18212 [DomCrawler] Use XML_ELEMENT_NODE in nodeType check (rvanlaak)
This PR was merged into the 2.3 branch.

Discussion
----------

[DomCrawler] Use XML_ELEMENT_NODE in nodeType check

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

Making use of the predefined dom constant `XML_ELEMENT_NODE` (which value is `1`) makes more sense while interpreting `parents()` it's functionality. See http://php.net/manual/en/dom.constants.php

Commits
-------

cffea91 Use XML_ELEMENT_NODE in nodeType check
2016-03-18 07:07:29 +01:00
Fabien Potencier
d1b84140b6 bug #18216 [Intl] Fix invalid numeric literal on PHP 7 (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Intl] Fix invalid numeric literal on PHP 7

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

Work around `true === is_float(-9223372036854775808)`.

Commits
-------

999c0a5 [NumberFormatter] Fix invalid numeric literal on PHP 7
2016-03-18 07:04:14 +01:00
natechicago
c551bd17fc [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols 2016-03-17 15:26:25 +01:00
Nicolas Grekas
999c0a5501 [NumberFormatter] Fix invalid numeric literal on PHP 7 2016-03-17 15:06:47 +01:00
Christian Flothmann
f909fcad67 [Process] fix docblock syntax 2016-03-17 12:37:14 +01:00
Richard van Laak
cffea91c8e Use XML_ELEMENT_NODE in nodeType check 2016-03-17 10:11:54 +01:00
Nicolas Grekas
8cd9138938 bug #18023 [Process] getIncrementalOutput should work without calling getOutput (romainneutron)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] getIncrementalOutput should work without calling getOutput

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

Commits
-------

37d8695 [Process] getIncrementalOutput should work without calling getOutput
2016-03-17 09:31:46 +01:00
Nicolas Grekas
5fe2b06bc4 [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking 2016-03-17 09:22:17 +01:00
Kévin Dunglas
10c8d5eadb [PropertyAccess] Throw an UnexpectedTypeException when the type do not match 2016-03-17 09:11:03 +01:00
Romain Neutron
37d86956f2 [Process] getIncrementalOutput should work without calling getOutput 2016-03-16 18:33:24 +01:00
Nicolas Grekas
a4b42d1fbd [Validator] Test DNS Url constraints using checkdnsrr() mock 2016-03-16 17:01:33 +01:00
Nicolas Grekas
c7686a3624 Merge branch '2.3' into 2.7
* 2.3:
  Improved the PHPdoc of FileSystem::copy()
  [Validator] Test DNS Email constraints using checkdnsrr() mock
  [travis] Run real php subprocesses on hhvm for Process component tests
  bug #18161 [Translation] Add support for fuzzy tags in PoFileLoader
  [Form] Fix NumberToLocalizedStringTransformer::reverseTransform with big integers
  [Form] Fix INT64 cast to float in IntegerType.
  [SecurityBundle][PHPDoc] Added method doumentation for SecurityFactoryInterface
  FrameworkBundle: Client: getContainer(): fixed phpdoc
  [Validator] Updating inaccurate docblock comment

Conflicts:
	.travis.yml
	src/Symfony/Component/Validator/Tests/Constraints/EmailValidatorTest.php
2016-03-16 17:00:15 +01:00
Nicolas Grekas
56624e6a9d minor #18195 Improved the PHPdoc of FileSystem::copy() (javiereguiluz)
This PR was squashed before being merged into the 2.3 branch (closes #18195).

Discussion
----------

Improved the PHPdoc of FileSystem::copy()

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

Commits
-------

9ad67ca Improved the PHPdoc of FileSystem::copy()
2016-03-16 16:52:39 +01:00
Javier Eguiluz
9ad67caea5 Improved the PHPdoc of FileSystem::copy() 2016-03-16 16:52:36 +01:00
Nicolas Grekas
092a42b22c minor #18196 [Validator] Test DNS Email constraints using checkdnsrr() mock (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Validator] Test DNS Email constraints using checkdnsrr() mock

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

Commits
-------

165755a [Validator] Test DNS Email constraints using checkdnsrr() mock
2016-03-16 16:51:17 +01:00
Nicolas Grekas
165755a01f [Validator] Test DNS Email constraints using checkdnsrr() mock 2016-03-16 16:47:01 +01:00
Nicolas Grekas
c722e35fb3 [travis] Run real php subprocesses on hhvm for Process component tests 2016-03-16 14:40:51 +01:00
Steve Frécinaux
970b9568b1 bug #18161 [Translation] Add support for fuzzy tags in PoFileLoader
The traditional gettext tools usually try to find similar strings when
updating translations. This results in some strings having a translation
but being marked as "fuzzy", even if the translation is not correct.

The expected result when a string is marked as fuzzy is that it should
not be used by the translation system. Using symfony, though, the
translations were used, which could result in "funny" messages being
displayed in the interface despite being often completely out of
context.

This commit discards messages in .po files that have a '#, fuzzy' flag.

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | 18161
| License       | MIT
| Doc PR        | -
2016-03-15 17:57:15 +01:00
Nicolas Grekas
18615fccf0 bug #18179 [Form] Fix NumberToLocalizedStringTransformer::reverseTransform with big integers (ovrflo, nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fix NumberToLocalizedStringTransformer::reverseTransform with big integers

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

Commits
-------

03c008c [Form] Fix NumberToLocalizedStringTransformer::reverseTransform with big integers
6b6073f [Form] Fix INT64 cast to float in IntegerType.
2016-03-15 16:48:36 +01:00
Nicolas Grekas
03c008cdbf [Form] Fix NumberToLocalizedStringTransformer::reverseTransform with big integers 2016-03-15 16:37:19 +01:00
Catalin Dan
6b6073f685 [Form] Fix INT64 cast to float in IntegerType. 2016-03-15 16:37:19 +01:00
Nicolas Grekas
a90818546b minor #18113 [Validator] Updating inaccurate docblock comment (natechicago)
This PR was merged into the 2.3 branch.

Discussion
----------

[Validator] Updating inaccurate docblock comment

| 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 formatValue() docblock refers to a $prettyDateTime argument, which does not exist.  Instead, it should refer to the $format argument.

I'm also adding parentheses around the `$format & self::OBJECT_TO_STRING` expression on line 102 so it is formatted similarly to the `($format & self::PRETTY_DATE)` expression a few lines above it.

Commits
-------

a784743 [Validator] Updating inaccurate docblock comment
2016-03-15 13:41:46 +01:00
Fabien Potencier
fef2474d4e Merge branch '2.3' into 2.7
* 2.3:
  bumped Symfony version to 2.3.40
  set s-maxage only if all responses are cacheable
  updated VERSION for 2.3.39
  update CONTRIBUTORS for 2.3.39
  updated CHANGELOG for 2.3.39
  Improved the "branch" row of the PR table
  Fix typos #18090 1. PHPs session design to PHP's session design 2. Symfony HttpKernel offers to Symfony's HttpKernel offers 3. in which case it it should to in which case it should
  Fix for Isssue #18091
  replace perfom by perform
  minor #18088 Fix typo for profiler
2016-03-15 07:08:00 +01:00
Fabien Potencier
0f35599858 bug #18164 [HttpKernel] set s-maxage only if all responses are cacheable (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpKernel] set s-maxage only if all responses are cacheable

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

Commits
-------

b7d9338 set s-maxage only if all responses are cacheable
2016-03-15 07:00:34 +01:00
Fabien Potencier
8aece06d48 bumped Symfony version to 2.3.40 2016-03-14 22:34:48 +01:00
Christian Flothmann
b7d93381a2 set s-maxage only if all responses are cacheable 2016-03-14 17:13:08 +01:00
Fabien Potencier
1d4f366be0 updated VERSION for 2.3.39 2016-03-13 17:38:02 +01:00
Nicolas Grekas
8feb12184c bug #18150 [Process] Wait a bit less on Windows (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] Wait a bit less on Windows

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

By using `stream_select` instead of `usleep` when the input is at wait, and by not blocking when the process has halted, we can enhance a bit the performance on Windows.

Commits
-------

380a54f [Process] Wait a bit less on Windows
2016-03-13 11:16:27 +01:00
Dan Blows
2e81b0a944 [Debug] Replaced logic for detecting filesystem case sensitivity 2016-03-13 11:12:56 +01:00
Nicolas Grekas
380a54f987 [Process] Wait a bit less on Windows 2016-03-13 11:06:10 +01:00
Fabien Potencier
2a2aefa4b7 minor #18119 [Hack Day] Issue for newcomers (2). Replace perfom by perform (JuanLuisGarciaBorrego)
This PR was merged into the 2.3 branch.

Discussion
----------

[Hack Day] Issue for newcomers (2). Replace perfom by perform

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

Commits
-------

f33f192 replace perfom by perform
2016-03-12 18:53:09 +01:00
Fabien Potencier
8ab25a3d1d minor #18131 Fix typos #18090 (taiiiraaa)
This PR was merged into the 2.3 branch.

Discussion
----------

Fix typos #18090

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

1. PHPs session design to PHP's session design
2. Symfony HttpKernel offers to Symfony's HttpKernel offers
3. in which case it it should to in which case it should

Commits
-------

6276452 Fix typos #18090 1. PHPs session design to PHP's session design 2. Symfony HttpKernel offers to Symfony's HttpKernel offers 3. in which case it it should to in which case it should
2016-03-12 18:48:28 +01:00
taiiiraaa
6276452592 Fix typos #18090
1. PHPs session design to PHP's session design
2. Symfony HttpKernel offers to Symfony's HttpKernel offers
3. in which case it it should to in which case it should
2016-03-12 16:03:08 +00:00
juanluisgarciaborrego
f33f1929a2 replace perfom by perform 2016-03-12 15:44:43 +01:00
Enleur
44398fc696 minor #18088 Fix typo for profiler 2016-03-12 21:15:46 +07:00
Nate
a784743609 [Validator] Updating inaccurate docblock comment
The formatValue() docblock refers to a $prettyDateTime argument, which does not exist.  Instead, it should refer to the $format argument.
2016-03-11 18:42:00 -06:00
Nicolas Grekas
def0176e1b Merge branch '2.3' into 2.7
* 2.3:
  [ci] use hirak/prestissimo
  [Filesystem] Fix transient tests
  [HttpFoundation] Avoid warnings when checking malicious IPs
  [HttpFoundation] Set the Content-Range header if the requested Range is unsatisfied

Conflicts:
	appveyor.yml
	src/Symfony/Component/Filesystem/Tests/FilesystemTest.php
2016-03-10 20:23:56 +01:00
Nicolas Grekas
adf1ca8e90 [ci] use hirak/prestissimo 2016-03-10 17:50:02 +01:00
Nicolas Grekas
a6edd78116 [Filesystem] Fix transient tests 2016-03-10 15:49:24 +01:00
Fabien Potencier
be867ae968 bug #18080 [HttpFoundation] Set the Content-Range header if the requested Range is unsatisfied (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Set the Content-Range header if the requested Range is unsatisfied

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

This is a followup to https://github.com/symfony/symfony/pull/17150#issuecomment-174509954

[RFC2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html) specifies the Content-Range header SHOULD be included with a *416 Requested Range Not Satisfiable* response:

>    When this status code is returned for a byte-range request, the response SHOULD include a Content-Range entity-header field specifying the current length of the selected resource (see section 14.16). This response MUST NOT use the multipart/byteranges content- type.

[RFC 7233](https://tools.ietf.org/html/rfc7233#section-4.2) specifies what should be the header's value. It's in the "Request for comments" state, but it's the best definition I could find. This value is valid according to rfc2616 as well.

Commits
-------

54329d8 [HttpFoundation] Set the Content-Range header if the requested Range is unsatisfied
2016-03-10 14:40:45 +01:00
Nicolas Grekas
4bc282d363 Merge branch '2.3' into 2.7
* 2.3:
  [Finder] Partially revert #17134 to fix a regression
  [HttpKernel] Fix mem usage when stripping the prod container
  exception when registering bags for started sessions

Conflicts:
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/HttpKernel/Kernel.php
2016-03-10 11:49:29 +01:00
Fabien Potencier
1d9815f5c7 bug #18066 [Process] Fix pipes handling (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Process] Fix pipes handling

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

Commits
-------

3ab6c39 [Process] Fix pipes handling
2016-03-10 11:09:14 +01:00
Jakub Zalas
3067bdb8d9 [HttpFoundation] Avoid warnings when checking malicious IPs 2016-03-10 08:48:57 +00:00
Jakub Zalas
54329d836c [HttpFoundation] Set the Content-Range header if the requested Range is unsatisfied 2016-03-09 16:57:57 +00:00
Jakub Zalas
9c3247cfd4 [Console] Fix an autocompletion question helper issue with non-sequentially indexed choices 2016-03-09 16:30:49 +00:00
Nicolas Grekas
3ab6c3965f [Process] Fix pipes handling 2016-03-09 15:29:38 +01:00
Fabien Potencier
fd4edff329 bug #18048 [HttpKernel] Fix mem usage when stripping the prod container (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpKernel] Fix mem usage when stripping the prod container

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

I propose to just replace doc comments by regular comments, so that the parser removes them and opcache doesn't have to keep them in memory, which is the target.

Commits
-------

4fa5844 [HttpKernel] Fix mem usage when stripping the prod container
2016-03-09 14:11:45 +01:00
Fabien Potencier
15ccef7690 bug #18065 [Finder] Partially revert #17134 to fix a regression (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[Finder] Partially revert #17134 to fix a regression

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

Commits
-------

ead1824 [Finder] Partially revert #17134 to fix a regression
2016-03-09 14:08:09 +01:00
Jakub Zalas
ead1824d3e [Finder] Partially revert #17134 to fix a regression 2016-03-09 12:50:31 +00:00
Fabien Potencier
5d8067f32d bug #18018 [HttpFoundation] exception when registering bags for started sessions (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] exception when registering bags for started sessions

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

Commits
-------

c4a5b67 exception when registering bags for started sessions
2016-03-08 22:59:00 +01:00
Nicolas Grekas
4fa58440be [HttpKernel] Fix mem usage when stripping the prod container 2016-03-08 17:58:37 +01:00
Nicolas Grekas
a1c95f79d6 Merge branch '2.3' into 2.7
* 2.3:
  [Filesystem] Fix false positive in ->remove()
  [Validator] Fix the locale validator so it treats a locale alias as a valid locale

Conflicts:
	src/Symfony/Component/Filesystem/Tests/FilesystemTest.php
	src/Symfony/Component/Validator/Constraints/LocaleValidator.php
	src/Symfony/Component/Validator/composer.json
2016-03-08 14:51:36 +01:00
Nicolas Grekas
1bbcff0ba0 bug #18054 [Filesystem] Fix false positive in ->remove() (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Filesystem] Fix false positive in ->remove()

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

Commits
-------

3efd900 [Filesystem] Fix false positive in ->remove()
2016-03-08 14:39:20 +01:00
Nicolas Grekas
3efd900565 [Filesystem] Fix false positive in ->remove() 2016-03-08 14:32:44 +01:00
Nicolas Grekas
c417d7a1a5 [Filesystem] Cleanup/sync with 2.3 2016-03-08 10:44:31 +01:00
Jakub Zalas
fbb12d89d1 [Validator] Fix the locale validator so it treats a locale alias as a valid locale 2016-03-07 19:18:54 +00:00
Nicolas Grekas
81c50d628e Merge branch '2.3' into 2.7
* 2.3:
  [HttpFoundation] Fix transient test
  [HttpFoundation] Add a dependency on the mbstring polyfill
  add readme files where missing
  Don't use reflections when possible
  [Form] Update form tests after the ICU data update
  [Intl] Update tests and the number formatter to match behaviour of the intl extension
  [Intl] Update the ICU data to version 55
  [Intl] Fix the update-data.php script in preparation for ICU 5.5
  Use constant instead of function call.
  fixed test name
  automatically generate safe fallback filename

Conflicts:
	src/Symfony/Component/Debug/Debug.php
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
2016-03-07 14:45:47 +01:00
Nicolas Grekas
6d5dbf7a75 [HttpFoundation] Fix transient test 2016-03-07 14:26:56 +01:00
Jakub Zalas
59b9f156a9 [HttpFoundation] Add a dependency on the mbstring polyfill 2016-03-07 14:08:49 +01:00
Christian Flothmann
5ba194ec52 [2.7] update readme files for new components 2016-03-07 12:06:07 +01:00
Christian Flothmann
98cc98067e [EventDispatcher] fix syntax error 2016-03-06 18:01:13 +01:00
Fabien Potencier
4f224ef4ab bug #18019 [Intl] Update ICU to version 55 (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[Intl] Update ICU to version 55

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

The update script needed to be fixed to work with latest data files from ICU as well.

The only change I needed to do in stubs and tests is related to the way negative numbers are formatted for currencies (a change from `(£100)` to `-£100`).

Form tests needed an update as well, as some date formats have changed.

Commits
-------

fac3de6 [Form] Update form tests after the ICU data update
6822147 [Intl] Update tests and the number formatter to match behaviour of the intl extension
37a9d8c [Intl] Update the ICU data to version 55
894ce3c [Intl] Fix the update-data.php script in preparation for ICU 5.5
2016-03-06 11:37:13 +01:00
Fabien Potencier
a29e818a3f minor #18025 [2.7] Don't use reflection when possible (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7] Don't use reflection when possible

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

See https://github.com/symfony/symfony/pull/18021

Commits
-------

35be501 Don't use reflections when possible
2016-03-06 11:26:36 +01:00
Fabien Potencier
53033617f7 minor #18021 Don't use reflections when possible (Ener-Getick)
This PR was merged into the 2.3 branch.

Discussion
----------

Don't use reflections when possible

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

Use php functions instead of reflection when possible (to improve a bit the performance).

Commits
-------

a46270a Don't use reflections when possible
2016-03-06 11:24:23 +01:00
Fabien Potencier
8d7f6ed8f9 bug #18015 [2.7][Process] Fix memory issue when using large input streams (romainneutron)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7][Process] Fix memory issue when using large input streams

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

This removes buffering of a stream input. Tests shows that this implementation is much faster and fixes some issues when streams are based on very large inputs

Commits
-------

fb8da9f [Process] Fix memory issue when using large input streams
2016-03-06 11:17:13 +01:00
Ener-Getick
a46270a61a Don't use reflections when possible 2016-03-05 18:37:04 +01:00
Ener-Getick
35be5017e7 Don't use reflections when possible 2016-03-05 18:34:36 +01:00
Jakub Zalas
fac3de628e [Form] Update form tests after the ICU data update 2016-03-05 13:21:13 +00:00
Jakub Zalas
6822147464 [Intl] Update tests and the number formatter to match behaviour of the intl extension 2016-03-05 13:11:12 +00:00
Jakub Zalas
37a9d8ca24 [Intl] Update the ICU data to version 55 2016-03-05 13:11:11 +00:00
Jakub Zalas
894ce3cbd8 [Intl] Fix the update-data.php script in preparation for ICU 5.5 2016-03-05 13:11:11 +00:00
Romain Neutron
fb8da9ff28 [Process] Fix memory issue when using large input streams 2016-03-05 11:50:53 +01:00
Christian Flothmann
c4a5b67a5a exception when registering bags for started sessions 2016-03-05 08:51:23 +01:00
Konstantin.Myakshin
c1edbc08bb Use constant instead of function call. 2016-03-04 15:04:09 +02:00
Fabien Potencier
759f495594 fixed test name 2016-03-04 12:06:48 +01:00
Christian Flothmann
03721e33a2 automatically generate safe fallback filename 2016-03-04 10:37:05 +01:00
Fabien Potencier
e187f8bdb1 Merge branch '2.3' into 2.7
* 2.3:
  [Console] default to stderr in the console helpers
2016-03-04 10:22:21 +01:00
Fabien Potencier
ce60be5729 bug #15794 [Console] default to stderr in the console helpers (alcohol)
This PR was squashed before being merged into the 2.3 branch (closes #15794).

Discussion
----------

[Console] default to stderr in the console helpers

Interactive input/output and informational output such as progress should go to `stderr` if available.

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

See #13730 also for previous discussion.

If someone explicitly wants to use `stdout`, they can simply pass `$output->getStream()` instead of `$output` in most use-cases.

Commits
-------

3d4e95e [Console] default to stderr in the console helpers
2016-03-04 10:20:54 +01:00
Rob Bast
3d4e95ef71 [Console] default to stderr in the console helpers 2016-03-04 10:20:49 +01:00
Fabien Potencier
d66f0ebe35 Merge branch '2.3' into 2.7
* 2.3:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  Remove _path from query parameters when fragment is a subrequest and request attributes are already set Added tests for _path removal in FragmentListener
  Simplified everything
  Added a test
  Fixed the problem in an easier way
  Fixed a syntax issue
  Improved the error message when a template is not found
  [CodingStandards] Conformed to coding standards
  [TwigBundle] fixed Include file locations in "Template could not be found" exception
2016-03-04 08:52:28 +01:00
Fabien Potencier
9a5ea71c22 bug #17984 Allow to normalize \Traversable when serializing xml (Ener-Getick)
This PR was merged into the 2.3 branch.

Discussion
----------

Allow to normalize \Traversable when serializing xml

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

It's impossible to normalize an object implementing ``\Traversable`` when using the ``XMLEncoder``. For example we can't customize the serializer output when serializing a ``FormInterface`` instance.

So my proposition is to fix this by using the default XML encoder output only when the serializer can't normalize the data.

Commits
-------

97c5d27 Allow to normalize \Traversable
2016-03-04 08:19:22 +01:00
Fabien Potencier
8713c7efaf minor #17997 Updated all the README files (javiereguiluz)
This PR was squashed before being merged into the 2.3 branch (closes #17997).

Discussion
----------

Updated all the README files

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

Related to #17995.

Commits
-------

2e81248 Updated all the README files
2016-03-04 08:12:08 +01:00
Javier Eguiluz
2e812481c9 Updated all the README files 2016-03-04 08:12:06 +01:00
Fabien Potencier
aab27839f9 bug #17687 Improved the error message when using "@" in a decorated service (javiereguiluz)
This PR was squashed before being merged into the 2.7 branch (closes #17687).

Discussion
----------

Improved the error message when using "@" in a decorated service

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

Commits
-------

e7690ba Improved the error message when using "@" in a decorated service
2016-03-03 14:15:14 +01:00
Javier Eguiluz
e7690ba5c4 Improved the error message when using "@" in a decorated service 2016-03-03 14:15:12 +01:00
Fabien Potencier
9d58ad92fe bug #17744 Improve error reporting in router panel of web profiler (javiereguiluz)
This PR was squashed before being merged into the 2.7 branch (closes #17744).

Discussion
----------

Improve error reporting in router panel of web profiler

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

### Problem

If you define a route condition like this:

```yaml
app:
    resource: '@AppBundle/Controller/'
    type:     annotation
    condition: "request.server.get('HTTP_HOST') matches '/.*\.dev/'"
```

When browsing the Routing panel in the web profiler, you see an exception:

![problem](https://cloud.githubusercontent.com/assets/73419/12930027/553eeb08-cf76-11e5-90b1-ab0de6175d4e.png)

#### Why?

Because the route condition uses the `request` object, but the special `TraceableUrlMatcher` class doesn't get access to the real `request` object but to the special object obtained via:

```php
$request = $profile->getCollector('request');
```

These are the contents of this pseudo-request:

![cause](https://cloud.githubusercontent.com/assets/73419/12930052/804ea248-cf76-11e5-9c38-2e43e1654065.png)

`request.server.get(...)` condition fails because `request.server` is `null`. The full exception message shows this:

![exception](https://cloud.githubusercontent.com/assets/73419/12930079/9c7d6058-cf76-11e5-8eeb-45f5059c824c.png)

### Solution

I propose to catch all exceptions in `TraceableUrlMatcher` and display an error message with some details of the exception:

![error_message](https://cloud.githubusercontent.com/assets/73419/12930106/b29e31d2-cf76-11e5-868c-98d8b0cc4e5b.png)

Commits
-------

1001554 Improve error reporting in router panel of web profiler
2016-03-03 14:12:45 +01:00
Javier Eguiluz
10015546b0 Improve error reporting in router panel of web profiler 2016-03-03 14:12:44 +01:00
Fabien Potencier
154eac7733 bug #17595 [HttpKernel] Remove _path from query parameters when fragment is a subrequest (cmenning)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpKernel] Remove _path from query parameters when fragment is a subrequest

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

Prior to 2.3.29, all requests to the ESI fragment path ("/_fragment" by default) would have the "_path" query parameter removed. This held true whether an external proxy (such as Varnish) handled the request as true ESI, or whether the Symfony kernel was mocking ESI behavior and inlining the subrequest.

Once the "_controller" check was added in 2.3.29, the "_path" query parameter was only removed on master requests (such as those coming from an external proxy) and not subrequests, leading to differing behavior in production and development settings.

Commits
-------

c374420 Remove _path from query parameters when fragment is a subrequest and request attributes are already set Added tests for _path removal in FragmentListener
2016-03-03 13:35:04 +01:00
Ener-Getick
97c5d27c59 Allow to normalize \Traversable 2016-03-02 21:42:54 +01:00
Jules Pietri
bd22c8618a minor [Form] fix tests added by #16886 2016-03-02 18:06:04 +01:00
Fabien Potencier
29c616274c fixed CS 2016-03-02 16:25:21 +01:00
Fabien Potencier
0544b1f594 Merge branch '2.3' into 2.7
* 2.3:
  [DomCrawler] Dont use LIBXML_PARSEHUGE by default
  [Filesystem] Reduce complexity of ->remove()
  added tests for non-trusted proxies
  add 'guid' to list of exception to filter out
  Ensure backend slashes for symlinks on Windows systems
  [Filesystem] Try to delete broken symlinks
2016-03-02 16:25:10 +01:00
Fabien Potencier
5b577ddd19 bug #17986 [DomCrawler] Dont use LIBXML_PARSEHUGE by default (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[DomCrawler] Dont use LIBXML_PARSEHUGE by default

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

Because of http://symfony.com/blog/security-release-symfony-2-0-17-released

Commits
-------

fda32f8 [DomCrawler] Dont use LIBXML_PARSEHUGE by default
2016-03-02 16:22:15 +01:00
Craig Menning
c3744202f6 Remove _path from query parameters when fragment is a subrequest and request attributes are already set
Added tests for _path removal in FragmentListener
2016-03-02 08:58:36 -06:00
Nicolas Grekas
fda32f8c43 [DomCrawler] Dont use LIBXML_PARSEHUGE by default 2016-03-02 15:53:47 +01:00
Fabien Potencier
9a4bf1e099 minor #17985 [Filesystem] Reduce complexity of ->remove() (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[Filesystem] Reduce complexity of ->remove()

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

Commits
-------

065acb7 [Filesystem] Reduce complexity of ->remove()
2016-03-02 15:50:41 +01:00
Nicolas Grekas
065acb7fa8 [Filesystem] Reduce complexity of ->remove() 2016-03-02 15:47:46 +01:00
ged15
e0e82bb318 added tests for non-trusted proxies 2016-03-02 15:42:41 +01:00
Nicole Cordes
d897956362 Ensure backend slashes for symlinks on Windows systems
Resolves: #17614
2016-03-02 14:40:59 +01:00
Nicole Cordes
8442ab1b99 [Filesystem] Try to delete broken symlinks
If you delete the target of a symlink (at least on Windows systems) you
don't get the kind of the target anymore (obviously). Therefore it might
happen that a broken symlink to a directory should be removed with
unlink() which fails. This patch adds another check for a broken symlink
and tries to remove with rmdir() before throwing an exception. It helps
to clean up test folders on Windows systems (so already proofed by the
existing tests).
2016-03-02 14:09:33 +01:00
Fabien Potencier
54bca3f891 Merge branch '2.3' into 2.7
* 2.3:
  Add missing RFC comment
  ensure dump indentation to be greather than zero
2016-03-02 11:10:06 +01:00
Fabien Potencier
81b59b9eca bug #17978 [Yaml] ensure dump indentation to be greather than zero (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Yaml] ensure dump indentation to be greather than zero

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

Commits
-------

3464282 ensure dump indentation to be greather than zero
2016-03-02 11:08:25 +01:00
Fabien Potencier
d6a189b405 bug #16886 [Form] [ChoiceType] Prefer placeholder to empty_value (boite)
This PR was squashed before being merged into the 2.7 branch (closes #16886).

Discussion
----------

[Form] [ChoiceType] Prefer placeholder to empty_value

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

Prefer an explicitly set `placeholder` option (i.e. `false` or a non-empty
string) to an `empty_value` option when both are set.

The fix is to change the behaviour in the placeholder normalizer in
ChoiceType::configureOptions so that the value of the `empty_value` option is
used for placeholder only when the value of `placeholder` is null or an empty
string.

Commits
-------

a4d4c8a [Form] [ChoiceType] Prefer placeholder to empty_value
2016-03-02 10:54:50 +01:00
boite
a4d4c8aa0f [Form] [ChoiceType] Prefer placeholder to empty_value 2016-03-02 10:54:49 +01:00
Diego Saint Esteben
79013072f3 Add missing RFC comment 2016-03-01 21:02:26 -03:00
Christian Flothmann
3464282bd1 ensure dump indentation to be greather than zero 2016-03-01 21:23:51 +01:00
Fabien Potencier
7c3e4cf181 minor #17973 [From] minor fix tests added by #17798 for bootstrap theme (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[From] minor fix tests added by #17798 for bootstrap theme

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

Commits
-------

ee5b119 [From] minor fix tests added by #17798 for bootstrap theme
2016-03-01 18:36:56 +01:00
Fabien Potencier
c6b68924a0 Merge branch '2.3' into 2.7
* 2.3:
  fix debug toolbar rendering by removing inadvertently added links
  simplified code
  Allow variadic controller parameters to be resolved.
2016-03-01 18:34:38 +01:00
Jules Pietri
ee5b119ac6 [From] minor fix tests added by #17798 for bootstrap theme 2016-03-01 14:36:27 +01:00
Fabien Potencier
bedcb151b8 simplified code 2016-03-01 12:09:54 +01:00
Albin Kerouaton
f39afc85db Allow variadic controller parameters to be resolved. 2016-03-01 12:09:54 +01:00
Fabien Potencier
df4cc40082 bug #17568 Improved Bootstrap form theme for hidden fields (javiereguiluz)
This PR was squashed before being merged into the 2.7 branch (closes #17568).

Discussion
----------

Improved Bootstrap form theme for hidden fields

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

Commits
-------

ba5d7f9 Improved Bootstrap form theme for hidden fields
2016-03-01 08:14:37 +01:00
Javier Eguiluz
ba5d7f99e9 Improved Bootstrap form theme for hidden fields 2016-03-01 08:14:36 +01:00
Fabien Potencier
cc198dfff1 bumped Symfony version to 2.7.11 2016-02-28 22:00:57 +01:00
Fabien Potencier
e23be1c90c updated VERSION for 2.7.10 2016-02-28 21:37:08 +01:00
Fabien Potencier
baf35cf3c0 bumped Symfony version to 2.3.39 2016-02-28 20:26:02 +01:00
Fabien Potencier
84203be720 updated VERSION for 2.3.38 2016-02-28 19:24:04 +01:00
Fabien Potencier
2fc80cce12 fixed tests 2016-02-28 17:34:40 +01:00
Fabien Potencier
51a71ab74a Merge branch '2.3' into 2.7
* 2.3:
  #17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
  Fix bug when using an private aliased factory service
  ChoiceFormField of type "select" could be "disabled"
  Update contributing docs
  [Console] Fix escaping of trailing backslashes
  Fix constraint validator alias being required
  [ci] clone with depth=1 to kill push-forced PRs
  Add check on If-Range header
2016-02-28 17:19:47 +01:00
WouterJ
de406c0e38 Fix bug when using an private aliased factory service 2016-02-28 16:06:53 +01:00
Jules Pietri
017e1d9e6e bug #17798 [Form] allow choice_label option to be false
When `ChoiceType`is expanded, `choice_label` option can be `false`
or return `false` for one or more choices by a callable.
2016-02-26 16:42:52 +01:00
Fabien Potencier
7aec568c05 [Security] added some tests 2016-02-26 07:03:43 +01:00
Simon Bouland
576c4b9b42 ChoiceFormField of type "select" could be "disabled" 2016-02-26 06:48:23 +01:00
Fabien Potencier
be30748bc9 bug #17602 [HttpFoundation] Fix BinaryFileResponse incorrect behavior with if-range header (bburnichon)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Fix BinaryFileResponse incorrect behavior with if-range header

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

Commits
-------

aaad5bd Add check on If-Range header
2016-02-26 06:44:02 +01:00
Fabien Potencier
a7f98315f3 bug #17760 [2.7] [Form] fix choice value "false" in ChoiceType (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[2.7] [Form] fix choice value "false" in ChoiceType

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

- [x] Add tests for choices with `boolean` and `null` values, and with a placeholder
- [x] Fix FQCN in 2.8 tests, see #17759
- [x] Remove `choices_as_values` in 3.0 tests, see #17886

Commits
-------

8f918e5 [Form] refactor `RadioListMapper::mapDataToForm()`
3eac469 [Form] fix choice value "false" in ChoiceType
2016-02-26 06:04:56 +01:00
Martin Hasoň
6161438f57 [DependencyInjection] Enabled alias for service_container 2016-02-25 23:33:26 +01:00
Nicolas Grekas
44ae785064 [Console] Fix escaping of trailing backslashes 2016-02-24 15:09:34 +01:00
Christian Flothmann
0de21071c3 [DependencyInjection] fix tests 2016-02-23 20:37:29 +01:00
Fabien Potencier
6190058d5b bug #17866 [DependencyInjection] replace alias in factories (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] replace alias in factories

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

Commits
-------

b43b79b [DependencyInjection] replace alias in factories
2016-02-23 19:20:19 +01:00
Fabien Potencier
6bb1c6d737 Merge branch '2.3' into 2.7
* 2.3:
  Validate XLIFF translation files
  replace alias in factory services
2016-02-23 19:18:09 +01:00
Fabien Potencier
4b33fd3d45 bug #17867 [DependencyInjection] replace alias in factory services (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] replace alias in factory services

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

Commits
-------

56f8798 replace alias in factory services
2016-02-23 19:17:24 +01:00
Fabien Potencier
0807ff77d0 minor #17903 Validate XLIFF translation files (javiereguiluz)
This PR was squashed before being merged into the 2.3 branch (closes #17903).

Discussion
----------

Validate XLIFF translation files

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

In #17902 @stof proposed to add a simple test to validate `.xlf` files (to avoid issues like #17893).

This is a proposal for that test. My questions:

**1)** Do you agree displaying detailed error messages when the XML is not valid. Example output for the #17893 error:

![error_log](https://cloud.githubusercontent.com/assets/73419/13250664/932d2f14-da2b-11e5-8ea0-ecb43f58feea.png)

Or is it enough displaying just the PHPUnit error message and let the user figure out the details?

![simple_error](https://cloud.githubusercontent.com/assets/73419/13250671/a3b4bfd2-da2b-11e5-9277-454d0dd160b2.png)

**2)** How do I validate the translation files of the Security and Form components? Do I just copy+paste this test in those components?

Commits
-------

db03055 Validate XLIFF translation files
2016-02-23 19:12:36 +01:00
Javier Eguiluz
db0305569d Validate XLIFF translation files 2016-02-23 19:12:35 +01:00
Nicolas Grekas
4b41b079f0 Merge branch '2.3' into 2.7
* 2.3:
  Fixed a minor XML issue in a translation file
2016-02-23 13:13:02 +01:00
Javier Eguiluz
3135742c94 Fixed a minor XML issue in a translation file 2016-02-23 11:57:32 +01:00
Nicolas Grekas
b58b3a83e5 Fix merge 2016-02-23 08:38:51 +01:00
Christian Flothmann
b43b79bd71 [DependencyInjection] replace alias in factories 2016-02-22 18:00:41 +01:00
Nicolas Grekas
fd827b3366 Fix merge 2016-02-22 17:41:31 +01:00
Nicolas Grekas
ba35f3d7bb Merge branch '2.3' into 2.7
* 2.3:
  PhpUnitNoDedicateAssertFixer results
  Improve Norwegian translations
  Simplify markdown for PR template

Conflicts:
	src/Symfony/Bridge/Propel1/Tests/Form/DataTransformer/CollectionToArrayTransformerTest.php
	src/Symfony/Component/Security/Tests/Core/SecurityContextTest.php
2016-02-22 17:12:29 +01:00
Jules Pietri
8f918e5f84 [Form] refactor RadioListMapper::mapDataToForm()
This fixes "false" choice pre selection when `ChoiceType`
is `expanded` and not `multiple`
2016-02-22 16:33:26 +01:00
Jules Pietri
3eac4693ad [Form] fix choice value "false" in ChoiceType 2016-02-22 16:33:26 +01:00
Benoît Burnichon
aaad5bd3d1 Add check on If-Range header
Also verify edge case where no last-modified header is available
2016-02-22 12:57:02 +01:00
SpacePossum
7aff7f42c1 PhpUnitNoDedicateAssertFixer results 2016-02-21 12:34:19 +01:00
Christian Flothmann
56f87982d8 replace alias in factory services 2016-02-20 20:14:11 +01:00
Valentin Jonovs
73a5d6c684 Improve Norwegian translations 2016-02-20 17:42:01 +01:00
Fabien Potencier
653428af76 Merge branch '2.3' into 2.7
* 2.3:
  fixed CS
  fixed CS
  documented the $url parameter better
  register commands from kernel when accessing list
  Update FileSystem
2016-02-18 17:03:55 +01:00
Fabien Potencier
e932baec28 bug #17569 [FrameworkBundle] read commands from bundles when accessing list (havvg)
This PR was merged into the 2.3 branch.

Discussion
----------

[FrameworkBundle] read commands from bundles when accessing list

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

This allows access to the list of commands registered by the kernel (bundle and later service ids) programmatically when you do not `run` the application.

Commits
-------

0fe3088 register commands from kernel when accessing list
2016-02-18 16:42:34 +01:00
Fabien Potencier
1f22290d8c fixed CS 2016-02-18 16:12:50 +01:00
Fabien Potencier
7ce861d09a bug #16987 [FileSystem] Windows fix (flip111)
This PR was merged into the 2.3 branch.

Discussion
----------

[FileSystem] Windows fix

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

* Fixes edge case on windows where PHP does not generate a PHP Warning but instead returns a wrong result https://bugs.php.net/bug.php?id=71103
* Improved error reporting on `unlink` used in `remove()`

Commits
-------

0d5f7e2 Update FileSystem
2016-02-18 16:09:31 +01:00
Fabien Potencier
59944896f2 documented the $url parameter better 2016-02-18 14:55:48 +01:00
Tobias Schultze
00e38198b7 [Form] add test for ArrayChoiceList handling null 2016-02-18 14:16:01 +01:00
Fabien Potencier
d3c55cb3f1 bug #17787 [Form] Fix choice placeholder edge cases (Tobion)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fix choice placeholder edge cases

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

Fixing several problems with choice placeholder that enhances #9030 for more edge cases:

- A choice with an empty value manually added in the choices array should only be considered a placeholder when it is the first element in the final choice select.
This is part of the HTML spec and how browsers also behave. If you select a choice with an empty value that is not the first option, it will still pass the "required" check
and thus submit the empty value. So it's not a placeholder.
If in the example below you move the empty option to the first place, the browsers will error on submit that you
must select a value. So only then it is a placeholder to show as initial value.

```html
<select id="form_timezone" name="form[timezone]" required="required">
    <option value="Africa/Abidjan">Abidjan</option>
    <option value="">Empty</option>
</select>
```

Also the validator https://validator.w3.org/nu/ will mark the above code as error:
> The first child option element of a select element with a required attribute, and without a multiple attribute, and without a size attribute whose value is greater than 1, must have either an empty value attribute, or must have no text content. Consider either adding a placeholder option label, or adding a size attribute with a value equal to the number of option elements.

This is fixed by replacing`0 !== count($choiceList->getChoicesForValues(array('')))` with `$view->vars['placeholder_in_choices'] = $choiceListView->hasPlaceholder()`.
Which means, the required attribute is removed automatically because the select form element is required implicitly anyway due to the nature of the choice UI.

- As the above quote mentions, the `size` attribute also has impact. Namely for a select with size > 1 it can be possible to have a required attribute even without placeholder.
This is because when the size > 1, there is no default choice selected (similar to select with "multiple").

- A placeholder for required radio buttons or a select with size > 1 does not make sense as it would just be fake data that can be submitted (similar to the ignored placeholder for multi-select and checkboxes).

Commits
-------

0efbc30 [Form] fix edge cases with choice placeholder
2016-02-18 13:07:46 +01:00
Nicolas Grekas
de5c737426 Merge branch '2.3' into 2.7
* 2.3:
  Create PULL_REQUEST_TEMPLATE.md
  Remove duplicate validation in RedirectResponse
  [Yaml] fix default timezone to be UTC
  [DependencyInjection] fix dumped YAML string

Conflicts:
	src/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php
	src/Symfony/Component/Yaml/Tests/InlineTest.php
2016-02-18 09:57:30 +01:00
Fabien Potencier
31d4548d78 minor #17827 [Config] Add suggest to composer.json for symfony/yaml (Calin Mihai Pristavu)
This PR was merged into the 2.7 branch.

Discussion
----------

[Config] Add suggest to composer.json for symfony/yaml

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

Fixes #17826

Commits
-------

2200b0c [Config] Add suggest to composer.json for symfony/yaml
2016-02-18 08:23:36 +01:00
Fabien Potencier
5fda221d47 bug #17835 [Yaml] fix default timezone to be UTC (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Yaml] fix default timezone to be UTC

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

Commits
-------

e9ee877 [Yaml] fix default timezone to be UTC
2016-02-18 08:04:48 +01:00
Tobias Schultze
d27c4f4d68 Remove duplicate validation in RedirectResponse 2016-02-18 01:47:59 +01:00
Christian Flothmann
e9ee877e4b [Yaml] fix default timezone to be UTC 2016-02-17 22:15:58 +01:00
Christian Flothmann
b1bb135249 [DependencyInjection] fix dumped YAML string 2016-02-17 17:36:45 +01:00
Calin Mihai Pristavu
2200b0c178 [Config] Add suggest to composer.json for symfony/yaml 2016-02-17 16:19:09 +02:00
Fabien Potencier
fd33367074 minor #17820 [Form] fix violation mapper tests (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] fix violation mapper tests

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

This takes into account the changes to the `getErrors()` in Symfony 2.5
(the method rturns a `FormErrorIterator` instead of an array) as well as
the fact that non-submitted forms do not accept errors since #10567
anymore.

Commits
-------

f87558d [Form] fix violation mapper tests
2016-02-17 07:13:55 +01:00
Robin Kanters
8eea65e0d8 The exception should be thrown if an object doesn't implement Traversable AND doesn't implement Countable, not when it doesn't implement Traversable but DOES implement Countable 2016-02-17 07:12:58 +01:00
Christian Flothmann
f87558d05e [Form] fix violation mapper tests
This takes into account the changes to the `getErrors()` in Symfony 2.5
(the method rturns a `FormErrorIterator` instead of an array) as well as
the fact that non-submitted forms do not accept errors since #10567
anymore.
2016-02-16 20:52:17 +01:00
Jakub Zalas
2849152c5e [HttpKernel] Prevent a fatal error when DebugHandlersListener is used with a kernel with no terminateWithException() method 2016-02-16 16:51:17 +00:00
Christian Flothmann
1c79c7b234 Merge branch '2.3' into 2.7
* 2.3:
  don't rely on deprecated YAML parser feature
2016-02-16 10:30:21 +01:00
Christian Flothmann
c8d387f131 don't rely on deprecated YAML parser feature 2016-02-16 09:57:10 +01:00
Fabien Potencier
457967c6c7 Merge branch '2.3' into 2.7
* 2.3:
  [DependencyInjection] fix dumped YAML snytax
  Remove InputOption::VALUE_REQUIRED mode from $default parameter description as InputOption::setDefault() throws an exception only when called in InputOption::VALUE_NONE mode. In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
  [Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
  [TwigBridge] Symfony 3.1 forward compatibility
2016-02-16 07:07:10 +01:00
Fabien Potencier
3f749d6559 bug #17814 [DependencyInjection] fix dumped YAML snytax (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] fix dumped YAML snytax

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

see the failing tests in #17809

Commits
-------

30388f1 [DependencyInjection] fix dumped YAML snytax
2016-02-16 07:02:27 +01:00
Christian Flothmann
30388f17ff [DependencyInjection] fix dumped YAML snytax 2016-02-15 22:04:15 +01:00
Tomas Liubinas
3c0615141e Remove InputOption::VALUE_REQUIRED mode from $default parameter description as InputOption::setDefault() throws an exception only when called in InputOption::VALUE_NONE mode.
In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
2016-02-15 20:17:39 +01:00
Fabien Potencier
d4ac467462 bug #17099 [Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path (alekitto)
This PR was squashed before being merged into the 2.3 branch (closes #17099).

Discussion
----------

[Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path

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

Commits
-------

f005c80 [Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
2016-02-15 10:19:57 +01:00
Alessandro Chitolina
f005c80bc5 [Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path 2016-02-15 10:19:56 +01:00
Fabien Potencier
dc59e42257 Merge branch '2.3' into 2.7
* 2.3:
  [Form] [Validator] Fix locale inconsistencies in Norwegian translations
  fixed CS
  [DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
  [Form] remove useless code in ResizeFormListener
2016-02-14 14:08:36 +01:00
Valentin Jonovs
67d343fd69 Fix locale and written standard inconsistencies for Norwegian translations 2016-02-14 14:07:55 +01:00
Fabien Potencier
1229b6d9b9 minor #17795 [Form] [Validator] Fix locale inconsistencies in Norwegian translations (valisj)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] [Validator] Fix locale inconsistencies in Norwegian translations

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

See #17785

Commits
-------

ab2ac93 [Form] [Validator] Fix locale inconsistencies in Norwegian translations
2016-02-14 14:06:33 +01:00
Valentin Jonovs
ab2ac93a45 [Form] [Validator] Fix locale inconsistencies in Norwegian translations
| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | N/A
| License       | MIT
2016-02-14 12:22:09 +01:00
Fabien Potencier
55b71ebd93 fixed CS 2016-02-14 11:04:53 +01:00
Fabien Potencier
ee01786dbd bug #17719 [DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder (lukaszmakuch)
This PR was squashed before being merged into the 2.3 branch (closes #17719).

Discussion
----------

[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder

[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder

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

The ContainerBuilder class wasn't implementing the ContainerInterface interface as it should according to the Liskov substitution principle.

It caused dependency on implementation instead than on the interface when using an instance of the ContainerBuilder class.

For example this code:
```php
<?php
use Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException;
use Symfony\Component\DependencyInjection\ContainerInterface;

/* @var $container ContainerInterface */
try {
    $container->get("wrong_service_key");
} catch (ServiceNotFoundException $e) {
    //action on a wrong key
}
```
works for correct implementations of the ContainerInterface interface, but the ContainerBuilder class was breaking that by throwing more abstract exceptions.

As the ServiceNotFoundException exceptions inherits from the InvalidArgumentException exception, this change shouldn't break code which catches the InvalidArgumentException exception while fetching values from a ContainerInterface interface implementation.

Commits
-------

aecb0fa [DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
2016-02-14 11:03:23 +01:00
Łukasz Makuch
aecb0fae3a [DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder 2016-02-14 11:03:21 +01:00
Tobias Schultze
088c20c9b3 [Form] remove useless code in ResizeFormListener 2016-02-13 18:06:22 +01:00
Tobias Schultze
0efbc30304 [Form] fix edge cases with choice placeholder 2016-02-13 13:18:37 +01:00
Nicolas Grekas
ec7b3f2053 Merge branch '2.3' into 2.7
* 2.3:
  [DomCrawler] Clarify the value returned by getPhpFiles()
  [DependencyInjection] Fix #16461 Let Container::set() replace existing aliases
  Added more exceptions to singularify method
2016-02-13 10:21:13 +01:00
Nicolas Grekas
5d433cab96 [VarDumper] Fix tests on PHP 7 2016-02-12 18:39:33 +01:00
Jakub Zalas
a694401e35 [DomCrawler] Clarify the value returned by getPhpFiles()
The comment was previously suggesting the returned value is similar to the one stored in $_FILES, while it is more similar to the way PHP stores submitted form values. It is actually more convenient to have it this way, so rather then changing the returned value (which would break BC), it is better to clarify the comment.
2016-02-12 10:10:06 +00:00
Matthieu Napoli
be85d16940 [DependencyInjection] Fix #16461 Let Container::set() replace existing aliases
`Container::set()` now overrides any previously alias defined with the same name.
2016-02-12 09:48:06 +01:00