Commit Graph

12489 Commits

Author SHA1 Message Date
Tobias Schultze
17ce6492d9 consistently use str_replace to unify directory separators (remaining) 2015-08-26 20:02:40 +02:00
Tobias Schultze
755f3c0223 Merge branch '2.3' into 2.7
Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Templating/TemplateFilenameParser.php
2015-08-26 19:56:37 +02:00
Christophe Coevoet
5df64dca52 Fix the retrieval of the value with property path when using a loader 2015-08-26 18:42:09 +02:00
Fabien Potencier
bdfc9dc7b3 minor #15614 consistently use str_replace to unify directory separators (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

consistently use str_replace to unify directory separators

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

We used a mix of `str_replace` and `strtr` for the same thing. `str_replace` is faster as [I tested myself](https://3v4l.org/MNrgC) which is logical since strtr adds logic we don't need here.

Commits
-------

b9760ef consistently use str_replace to unify directory separators
2015-08-26 18:41:06 +02:00
Nicolas Grekas
c63bcbe3d3 [Process] Disable failing tests on Windows 2015-08-26 13:41:45 +02:00
Nicolas Grekas
7f4f7131dd Merge branch '2.3' into 2.7
* 2.3:
  [Translation] Fix the string casting in the XliffFileLoader

Conflicts:
	src/Symfony/Component/Translation/Loader/XliffFileLoader.php
2015-08-26 12:49:32 +02:00
Nicolas Grekas
e924d567e9 Merge branch '2.3' into 2.7
* 2.3:
  Windows and Intl fixes
  Add appveyor.yml for C.I. on Windows
  [travis] merge php: nightly and deps=high test-matrix lines
  [Security] Add missing docblock in PreAuthenticatedToken

Conflicts:
	.travis.yml
	src/Symfony/Component/Filesystem/Tests/FilesystemTest.php
	src/Symfony/Component/HttpFoundation/JsonResponse.php
	src/Symfony/Component/Intl/DateFormatter/IntlDateFormatter.php
2015-08-26 12:48:03 +02:00
Christophe Coevoet
b856f62cd4 [Translation] Fix the string casting in the XliffFileLoader 2015-08-26 11:54:34 +02:00
Fabien Potencier
fed77a3d80 minor #15484 [Security] Add missing docblock in PreAuthenticatedToken (tgalopin)
This PR was merged into the 2.3 branch.

Discussion
----------

[Security] Add missing docblock in PreAuthenticatedToken

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

I noticed the `PreAuthenticatedToken` does not provide any dockblock about its constructor parameters so PHPStorm uses the `AbstractToken` parameters and think I'm using `PreAuthenticatedToken` badly.

This fix it by adding the missing docblock and I also added the string[] possibility for roles in `AbstractToken` as it's present in the code and the exception message.

Commits
-------

1dda0a6 [Security] Add missing docblock in PreAuthenticatedToken
2015-08-26 11:25:14 +02:00
Fabien Potencier
c13b5c1a43 bug #15575 Add appveyor.yml for C.I. on Windows (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

Add appveyor.yml for C.I. on Windows

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | YES, both on Travis (Linux) and on Appveyor (Windows)!
| Fixed tickets | #13934, #15049, #14259, #15045, #15444
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/5654

- testing two matrix lines:
  - one without mbtring nor fileinfo nor intl
  - one with these ext enables, intl version 51.2 so that almost no test is skipped on our Intl component
- bug fixes thanks to these harder testing conditions
- some display bug on appveyor, [reported here](http://help.appveyor.com/discussions/suggestions/197-support-ansi-color-codes).

Commits
-------

ea5d656 Windows and Intl fixes
8bbd8d9 Add appveyor.yml for C.I. on Windows
2015-08-26 11:00:07 +02:00
Nicolas Grekas
ea5d656ddd Windows and Intl fixes 2015-08-25 23:41:39 +02:00
SaschaDens
cbba07450e [VarDumper] fixed HtmlDumper to target specific the head tag 2015-08-25 18:19:32 +02:00
Abdellatif Ait boudad
ffdab9259a Merge branch '2.3' into 2.7
Conflicts:
	.travis.yml
	src/Symfony/Component/Translation/Loader/XliffFileLoader.php
2015-08-25 12:59:36 +00:00
Tobias Schultze
b9760efb02 consistently use str_replace to unify directory separators 2015-08-25 14:59:33 +02:00
Leo Feyer
3dcda1a8bd Support omitting the <target> node in an .xlf file. 2015-08-25 11:54:38 +00:00
Christophe Coevoet
f31fa8c786 Fix the handling of values for multiple choice types
Choice values must always be strings, but a place was missing the
casting, breaking the comparison of selected choices when the callback
does not return a string.
2015-08-25 11:17:05 +02:00
Tristan Darricau
e5d3f2567d [console] Use the description when no help is available 2015-08-24 18:58:35 +02:00
Fabien Potencier
9d698e7225 [Form] made deprecation notice more precise 2015-08-24 09:31:47 +02:00
Fabien Potencier
1d53ca9c92 fixed CS 2015-08-24 09:31:10 +02:00
Fabien Potencier
aad7963ede Merge branch '2.7' into 2.8
* 2.7:
  fixes CS
2015-08-24 09:18:02 +02:00
Fabien Potencier
c25e054d9e minor #15597 fixes CS (fabpot)
This PR was merged into the 2.7 branch.

Discussion
----------

fixes CS

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

c0e4495 fixes CS
2015-08-24 09:16:32 +02:00
Fabien Potencier
c0e4495b66 fixes CS 2015-08-24 09:13:45 +02:00
Fabien Potencier
07174c30de Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  [DependencyInjection] Add missing file headers
  fixed typo
  made Symfony compatible with both Twig 1.x and 2.x
  [FrameworkBundle] Fix precedence of xdebug.file_link_format
2015-08-24 08:37:50 +02:00
Fabien Potencier
ce93f61437 Merge branch '2.3' into 2.7
* 2.3:
  fixed CS
  [FrameworkBundle] Fix precedence of xdebug.file_link_format
2015-08-24 08:37:42 +02:00
Fabien Potencier
cbe6bc9ac4 fixed CS 2015-08-24 08:32:52 +02:00
Kévin Dunglas
6ad4877cde [DependencyInjection] Add missing file headers 2015-08-24 04:28:49 +02:00
Fabien Potencier
1fc31243de Merge branch '2.7' into 2.8
* 2.7:
  [Form] fixed BC-break on grouped choice lists
  [WebProfilerBundle] add import for Twig macro
  made Symfony compatible with both Twig 1.x and 2.x
  [Debug/VarDumper] minor cleanups
  [Form] only use PropertyPath if not already callable
  [Form] fix reworked choice list phpdoc
  [DoctrineBridge][Form] Add old tests to legacy group
  Fixed warning when command alias is longer than command name
  removed _self usage when not needed
  Implement the support of timezone objects in the stub IntlDateFormatter
  typofix - https://github.com/vlajos/misspell_fixer
  make doctrine mappings compiler pass exception message more understandable
  fix debug-ext 003.phpt
  [Yaml] Nested merge keys
  [FrameworkBundle] [Command] removed unused variable.
  [Debug] Enhance DebugClassLoader performance on MacOSX
  Add support for variadic arguments in the GetSetNormalizer
  [DoctrineBridge][Form] Fix IdReader when indexing by primary foreign key
  [DoctrineBridge][Form] Fix EntityChoiceList when indexing by primary foreign key
2015-08-22 09:42:07 +02:00
Fabien Potencier
b4de379a15 bug #15561 [Form] only use PropertyPath if not already callable (Tobion)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] only use PropertyPath if not already callable

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | could be in edge cases
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #15542
| License       | MIT
| Doc PR        | -

Currently it uses a PropertyPath even when the string is already a callable. But the callable string should have higher priority since that is also the one documented in ChoiceListFactoryInterface.

Commits
-------

470b140 [Form] only use PropertyPath if not already callable
2015-08-22 09:21:30 +02:00
Fabien Potencier
c1c5f1debb feature #15555 [VarDumper] Add caster for pgsql resources (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[VarDumper] Add caster for pgsql resources

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

If pgsql users could give feedback on this one, that would we great!

Commits
-------

6c3cfe5 [VarDumper] Add caster for pgsql resources
2015-08-22 09:20:08 +02:00
Fabien Potencier
5bede45e29 bug #15546 [Form] fixed BC-break on grouped choice lists (origaminal)
This PR was squashed before being merged into the 2.7 branch (closes #15546).

Discussion
----------

[Form] fixed BC-break on grouped choice lists

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

Commits
-------

12a7dd1 [Form] fixed BC-break on grouped choice lists
2015-08-22 09:11:11 +02:00
origaminal
12a7dd1714 [Form] fixed BC-break on grouped choice lists 2015-08-22 09:11:02 +02:00
Tobias Schultze
698341631b minor #15558 [Form] fix reworked choice list phpdoc (Tobion)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] fix reworked choice list phpdoc

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

Fix leftover phpdoc change from #15061

Commits
-------

747c1a5 [Form] fix reworked choice list phpdoc
2015-08-21 17:30:00 +02:00
Nicolas Grekas
6c3cfe59a4 [VarDumper] Add caster for pgsql resources 2015-08-18 14:21:03 +02:00
Nicolas Grekas
f1d379db7d [Debug/VarDumper] minor cleanups 2015-08-17 10:58:33 +02:00
Tobias Schultze
470b1400d6 [Form] only use PropertyPath if not already callable 2015-08-15 21:15:17 +02:00
Tobias Schultze
747c1a5aee [Form] fix reworked choice list phpdoc 2015-08-15 20:22:17 +02:00
Abdellatif Ait boudad
c8e05e39ed feature #15452 [Translator] [Xliff] Add support for target attributes. (marcosdsanchez)
This PR was merged into the 2.8 branch.

Discussion
----------

[Translator] [Xliff] Add support for target attributes.

The previous implementation ignored attributes in target nodes in xliff files
so they were lost when you loaded and then dumped the same file. This change
should fix that problem.

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

Commits
-------

b913695 Add support for target attributes.
2015-08-14 08:47:35 +00:00
Fabien Potencier
f1d588512f bug #15515 [Console] Fixed warning when command alias is longer than command name (dosten)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fixed warning when command alias is longer than command name

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

Commits
-------

ecfe944 Fixed warning when command alias is longer than command name
2015-08-12 13:21:35 +02:00
Fabien Potencier
e8948671a1 Merge branch '2.3' into 2.7
* 2.3:
  Implement the support of timezone objects in the stub IntlDateFormatter
  [DoctrineBridge][Form] Fix EntityChoiceList when indexing by primary foreign key
2015-08-12 11:55:25 +02:00
Diego Saint Esteben
ecfe94465d Fixed warning when command alias is longer than command name 2015-08-11 17:08:57 -03:00
Marcos Sánchez
b913695682 Add support for target attributes.
The previous implementation ignored attributes in target nodes in xliff files
so they were lost when you load and then dump the same file. This change
should fix that problem.
2015-08-11 12:01:27 -03:00
Fabien Potencier
0ea11e4639 bug #15489 Implement the support of timezone objects in the stub IntlDateFormatter (stof)
This PR was merged into the 2.3 branch.

Discussion
----------

Implement the support of timezone objects in the stub IntlDateFormatter

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

As of PHP 5.5, the IntlDateFormatter accepts to use DateTimeZone or IntlTimeZone objects as timezone in the constructor (and in the new setTimeZone method) rather than timezone ids.
This is even the proper way to pass a timezone from a DateTime object as DateTimeZone names are not all valid ICU identifiers (and there is a PR on the Twig-extensions repo to use such feature to support things properly: https://github.com/twigphp/Twig-extensions/pull/148).

I'm considering this as a bugfix because it is a mismatch between the stub implementation and the real class.
Note that for simplicity, these objects are accepted on all PHP versions, as reproducing the behavior of older versions is not possible in the stub anyway (triggering a warning and making the instantiating with ``new`` return ``null``). We already have such differences anyway (the ``setTimeZone`` method exists in all PHP versions in the stub)

Commits
-------

2856abe Implement the support of timezone objects in the stub IntlDateFormatter
2015-08-11 14:30:44 +02:00
Christophe Coevoet
2856abe87f Implement the support of timezone objects in the stub IntlDateFormatter
As of PHP 5.5, the IntlDateFormatter accepts to use DateTimeZone or
IntlTimeZone objects as timezone in the constructor (and in the new
setTimeZone method) rather than timezone ids.
This is even the proper way to pass a timezone from a DateTime object as
DateTimeZone names are not all valid ICU identifiers.
2015-08-11 11:41:21 +02:00
Nicolas Grekas
c0ff72802c Merge branch '2.3' into 2.7
* 2.3:
  typofix - https://github.com/vlajos/misspell_fixer
  [Yaml] Nested merge keys
  Add support for variadic arguments in the GetSetNormalizer

Conflicts:
	src/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php
	src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
	src/Symfony/Component/Validator/Tests/Mapping/ClassMetadataTest.php
	src/Symfony/Component/Yaml/Tests/Fixtures/sfMergeKey.yml
2015-08-11 09:58:34 +02:00
Veres Lajos
0692ca97cd typofix - https://github.com/vlajos/misspell_fixer 2015-08-11 09:25:28 +02:00
Fabien Potencier
620a3d4c69 bug #15426 [Serializer] Add support for variadic arguments in the GetSetNormalizer (stof)
This PR was merged into the 2.3 branch.

Discussion
----------

[Serializer] Add support for variadic arguments in the GetSetNormalizer

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

There were 2 broken cases:

- when the value was passed, the array was passed as argument, becoming the first value of the variadic array. The array needs to be spread into multiple arguments when calling the method
- when the value was missing, the code would throw a ReflectionException, similar to the issue reported in #13690, because a variadic argument is optional but does not have a default value

Commits
-------

704760b Add support for variadic arguments in the GetSetNormalizer
2015-08-09 10:58:38 +02:00
Fabien Potencier
0f56497cac bug #15480 [Yaml] Nested merge keys (mathroc)
This PR was merged into the 2.3 branch.

Discussion
----------

[Yaml] Nested merge keys

When trying to use nested merge keys in Yaml, the ref sometimes had the wrong value

eg, with:

```yaml
taz: &taz
    a: Steve
    w:
        p: 1234
nested:
    <<: *taz
    d: Doug
    w: &nestedref
        p: 12345
    z:
        <<: *nestedref
```

in this case, the ref `nestedref` had the value "Doug", which cause this error :

    Symfony\Component\Yaml\Exception\ParseException: YAML merge keys used with a scalar value instead of an array at line 38 (near "<<: *nestedref").

It now works as expected

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

note: this PR replace #15241

Commits
-------

500c57e [Yaml] Nested merge keys
2015-08-09 10:56:25 +02:00
Titouan Galopin
1dda0a615b [Security] Add missing docblock in PreAuthenticatedToken 2015-08-07 09:22:48 +02:00
Nicolas Grekas
7231598b4c bug #15443 [Debug] Enhance DebugClassLoader performance on MacOSX (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug] Enhance DebugClassLoader performance on MacOSX

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

Commits
-------

af0b8eb [Debug] Enhance DebugClassLoader performance on MacOSX
2015-08-07 08:54:57 +02:00
Elan Ruusamäe
18b6964744 fix debug-ext 003.phpt
in my environment the filename is filled, not "-"

$ php --version
PHP 5.5.27 (cli) (built: Jul 17 2015 12:32:05)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
2015-08-07 08:53:47 +02:00
Mathieu Rochette
500c57e6df [Yaml] Nested merge keys 2015-08-06 22:04:45 +02:00
Nicolas Grekas
5d8e00f457 Merge branch '2.7' into 2.8
* 2.7:
  Fix one dependency requirement

Conflicts:
	src/Symfony/Component/Serializer/composer.json
2015-08-06 11:13:37 +02:00
Nicolas Grekas
b08b43e313 Fix one dependency requirement 2015-08-06 11:12:43 +02:00
Nicolas Grekas
fceeb5d909 Merge branch '2.7' into 2.8
* 2.7:
  Clean wrong whitespaces
  [travis] Build phpunit with local components
  do not remove space between attributes
  [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate()
  Fix the retrieval of the default value for variadic arguments
  Annotated routes with a variadic parameter
  Fixing DbalSessionHandler to work with a Oracle "limitation" or bug?
  Update EngineInterface.php
  let Travis builds fail when PHP 7 jobs fail

Conflicts:
	.travis.yml
2015-08-05 17:58:16 +02:00
Fabien Potencier
a00687f43a feature #15416 [DependencyInjection] Added a way to define the priority of service decoration (dosten)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] Added a way to define the priority of service decoration

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

This PR adds a way to define the priority of service decoration, so, the service with the highest priority will be applied first (the default priority is zero).

```yaml
services:
    foo:
        class: Foo

    bar:
        class: Bar
        arguments: ['@bar.inner']
        decorates: foo
        public: false

    foobar:
        class: Foobar
        arguments: ['@foobar.inner']
        decorates: foo
        decoration_priority: 1
        public: false
```

This will result in this code:

```php
$this->services['foo'] = new Bar(new Foobar(new Foo)));
```

Commits
-------

75c98cb Added a way to define the priority of service decoration
2015-08-05 17:50:26 +02:00
Nicolas Grekas
9ce3200436 Merge branch '2.3' into 2.7
* 2.3:
  Clean wrong whitespaces
  [travis] Build phpunit with local components
  do not remove space between attributes
  [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate()
  Fix the retrieval of the default value for variadic arguments
  Annotated routes with a variadic parameter
  Fixing DbalSessionHandler to work with a Oracle "limitation" or bug?
  Update EngineInterface.php
  let Travis builds fail when PHP 7 jobs fail

Conflicts:
	.travis.yml
	src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig
2015-08-05 17:45:00 +02:00
Michaël Perrin
f5ca270e75 [Console] Handle false return value from readline
"readline()" returns "false" when the user presses CTRL+D.
2015-08-04 17:59:05 +02:00
Nicolas Grekas
af0b8eb26c [Debug] Enhance DebugClassLoader performance on MacOSX 2015-08-04 12:48:55 +02:00
Christophe Coevoet
328ec0133e bug #15263 [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate() (axiac)
This PR was squashed before being merged into the 2.3 branch (closes #15263).

Discussion
----------

[HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate()

| Q             | A
| ------------- | ---
| Fixed tickets | #15262
| License       | MIT

'proxy-revalidate' is not a header on its own but a 'Cache-Control' directive
See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9

Commits
-------

6c22f0a [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate()
2015-08-03 19:22:19 +02:00
Valentin VALCIU
6c22f0af24 [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate() 2015-08-03 19:22:14 +02:00
Javier Eguiluz
68f0818a6c Allow to define Enum nodes with 1 single element 2015-08-03 10:27:53 +02:00
Nicolas Grekas
6888c1f256 Merge branch '2.7' into 2.8
* 2.7:
  [Locale] Fix Intl requirement
  Better Iban Validation

Conflicts:
	src/Symfony/Component/Locale/composer.json
	src/Symfony/Component/Validator/Constraints/Iban.php
2015-08-02 10:31:38 +02:00
Christophe Coevoet
704760b276 Add support for variadic arguments in the GetSetNormalizer 2015-08-01 21:55:55 +02:00
Christophe Coevoet
73c5eff44d Fix the retrieval of the default value for variadic arguments 2015-08-01 21:33:42 +02:00
Walter Dal Mut
9b7d4c7613 Annotated routes with a variadic parameter
There are no variadic default values and that generate a fatal error.
2015-08-01 21:19:19 +02:00
Nicolas Grekas
e23eb56ffe [Locale] Fix Intl requirement 2015-08-01 18:50:08 +02:00
Johnny Peck
d60b2bba60 Update EngineInterface.php
Grammer in doc comment.
2015-08-01 16:10:55 +02:00
Fabien Potencier
a4100f95e7 bug #13828 [Validator] Improve Iban Validation (afurculita)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Improve Iban Validation

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

This PR adds 2 more checks for better IBAN validation: the validation of the country code (represented by the first 2 letters) and the format validation according to the country format regex based on http://www.swift.com/dsp/resources/documents/IBAN_Registry.pdf.

Commits
-------

07b38de Better Iban Validation
2015-08-01 14:02:04 +02:00
Fabien Potencier
c856a010a2 feature #15382 [Console] Use readline for user input when available #DX (michaelperrin)
This PR was merged into the 2.8 branch.

Discussion
----------

[Console] Use readline for user input when available #DX

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

Given I am entering data in an user input
When I use left and right keys to make some changes in what I have typed
Then the cursor should move accordingly instead of adding characters at the end of the line

To make it simple: using the arrow keys (←  →)  to make changes to what I already typed would be much handier than getting `^[[D` and `^[[C` characters in the terminal and having to delete all chars to type everything again.

I could not add any extra tests to this as the STDIN can't be used during tests. But they are not breaking and I tried again all types of questions (text, choices, hidden) by myself.

Note that `readline` can't be used for hidden questions, as `stty -echo` is not taken into account.

Commits
-------

0534899 [Console] Fix Symfony coding standards violations
8b63d62 [Console] Use readline for user input when available
2015-08-01 13:59:20 +02:00
Michaël Perrin
05348991c2 [Console] Fix Symfony coding standards violations 2015-08-01 11:47:02 +02:00
Michaël Perrin
8b63d6209d [Console] Use readline for user input when available
This allows to use arrow keys in the terminal instead of having weird characters
2015-08-01 11:46:56 +02:00
Nicolas Grekas
48aa3e1453 Merge branch '2.7' into 2.8
* 2.7:
  [Locale] Add missing @group legacy annotations
  Fix security-acl deps
  Fix doctrine mapping validation type error
  Remove skipping of tests based on ICU data version whenever possible
  Fix the handling of null as locale in the stub intl classes
  do not dump leading backslashes in class names
  fix issue #15377
  Skip ::class constant
  [Config] type specific check for emptiness

Conflicts:
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Component/DependencyInjection/Dumper/GraphvizDumper.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTypeTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php
2015-08-01 11:43:59 +02:00
Nicolas Grekas
07fb308225 [Locale] Add missing @group legacy annotations 2015-08-01 11:35:48 +02:00
Nicolas Grekas
9fdf314cfa [Form] Add missing @group legacy annotations 2015-08-01 11:27:02 +02:00
Nicolas Grekas
2abdd50414 [Form] Use FQCN form types 2015-08-01 11:22:02 +02:00
Alexandru Furculita
07b38dea1f Better Iban Validation
Added more country-based tests, added new error type

The error type `NOT_SUPPORTED_COUNTRY_CODE_ERROR` has been added for the
IBANs from unsupported countries, for which we don't have defined a
format. We will not check anymore if a country code against the Intl
component.
The tests have been completed with more tests for each contry we have
formats defined.

The  4 character length check and the case check has been removed. The message code constants

`TOO_SHORT_ERROR` and `INVALID_CASE_ERROR` has been deprecated
2015-08-01 12:20:04 +03:00
Nicolas Grekas
3d7d378cbc Merge branch '2.3' into 2.7
* 2.3:
  Fix security-acl deps
  Fix doctrine mapping validation type error
  Remove skipping of tests based on ICU data version whenever possible
  Fix the handling of null as locale in the stub intl classes
  do not dump leading backslashes in class names
  Skip ::class constant
  [Config] type specific check for emptiness

Conflicts:
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Component/Config/Tests/Definition/ScalarNodeTest.php
	src/Symfony/Component/DependencyInjection/Dumper/GraphvizDumper.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/container9.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/IntegerToLocalizedStringTransformerTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTypeTest.php
	src/Symfony/Component/Locale/Tests/LocaleTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubLocaleTest.php
	src/Symfony/Component/Validator/Tests/Constraints/CountryValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/CurrencyValidatorTest.php
2015-08-01 11:05:17 +02:00
Fabien Potencier
2966cd2b89 minor #15412 Remove skipping of tests based on ICU data version whenever possible (stof)
This PR was merged into the 2.3 branch.

Discussion
----------

Remove skipping of tests based on ICU data version whenever possible

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

Many tests being skipped based on the ICU data version don't actually need it. They might be testing code paths not relying on Intl, or not performing assertions on the values depending on the ICU data and so not dependant on the exact ICU version being used.

this is somewhat related to https://github.com/symfony/symfony/issues/14259 as it allows to reduce the number of tests not running on Travis.

Commits
-------

7994513 Remove skipping of tests based on ICU data version whenever possible
2015-08-01 09:51:56 +02:00
Fabien Potencier
f1fa4238b7 bug #15380 do not dump leading backslashes in class names (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

do not dump leading backslashes in class names

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

Commits
-------

ad6cb10 do not dump leading backslashes in class names
2015-08-01 09:45:23 +02:00
Fabien Potencier
3b6d2a3fa3 bug #15376 [ClassMapGenerator] Skip ::class constant (WouterJ)
This PR was merged into the 2.3 branch.

Discussion
----------

[ClassMapGenerator] Skip ::class constant

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

Commits
-------

a336f0e Skip ::class constant
2015-08-01 09:35:45 +02:00
Nicolas Grekas
3d12946d0d Fix typo 2015-08-01 09:19:20 +02:00
Fabien Potencier
bffca95112 feature #15013 [Security] Removed security-acl from the core (iltar)
This PR was squashed before being merged into the 2.8 branch (closes #15013).

Discussion
----------

[Security] Removed security-acl from the core

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

The `Security\Acl` is removed from the core and is loaded from its own repository. All tests were passing and this is fully backwards compatible. I have removed all but the Test files in the first step and added the dependency to verify the Test were still working with the package dependency. The second step was to remove the remaining test files and tests are still running for both the Bundle and the Framework. Once the Read-Only repository is a full standalone repository, this PR can be merged.

- [x] Remove component from the core
- [ ] Remove read-only from https://github.com/symfony/security-acl

Once this PR is merged, I can start working on splitting the SecurityBundle and extracting the ACL part to the AclBundle.

/cc @fabpot

Commits
-------

b26a449 [Security] Removed security-acl from the core
2015-08-01 09:18:32 +02:00
Iltar van der Berg
b26a449d46 [Security] Removed security-acl from the core 2015-08-01 09:17:24 +02:00
Fabien Potencier
8d049c51d3 fixed typos 2015-08-01 08:45:26 +02:00
Fabien Potencier
5b38d74128 feature #15079 [Form] Deprecated FormTypeInterface::getName() and passing of type instances (webmozart)
This PR was merged into the 2.8 branch.

Discussion
----------

[Form] Deprecated FormTypeInterface::getName() and passing of type instances

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

#### Type Names

This PR deprecates the definition of the `getName()` method of form types. See #15008 for a more detailed description.

Before:

```php
class MyType extends AbstractType
{
    public function getName()
    {
        return 'mytype';
    }

    // ...
}
```

After:

```php
class MyType extends AbstractType
{
    // ...
}
```

You should always reference other types by their fully-qualified class names. Thanks to PHP 5.5, that's easy:

Before:

```php
$form = $this->createFormBuilder()
    ->add('name', 'text')
    ->add('age', 'integer')
    ->getForm();
```

After:

```php
$form = $this->createFormBuilder()
    ->add('name', TextType::class)
    ->add('age', IntegerType::class)
    ->getForm();
```

#### Type Instances

Furthermore, passing of type instances is deprecated.

Before:

```php
$form = $this->createForm(new AuthorType());
```

After:

```php
$form = $this->createForm(AuthorType::class);
```

#### DIC Aliases

When registering a type in the DIC, you should omit the "alias" attribute now.

Before:

```xml
<service id="my.type" class="Vendor\Type\MyType">
    <tag name="form.type" alias="mytype" />
    <argument type="service" id="some.service.id" />
</service>
```

After:

```xml
<service id="my.type" class="Vendor\Type\MyType">
    <tag name="form.type" />
    <argument type="service" id="some.service.id" />
</service>
```

Types without dependencies don't need to be registered in the DIC as they can be instantiated right away.

#### Template Block Prefixes

By default, the class name of the type in underscore notation minus "Type" suffix is used as Twig template block prefix (e.g. `UserProfileType` => `user_profile_*`). If you want to customize that, overwrite the new `getBlockPrefix()` method in your type:

```php
class UserProfileType extends AbstractType
{
    public function getBlockPrefix()
    {
        return 'profile';
    }

    // ...
}
```

Commits
-------

3d9e5de [Form] Deprecated FormTypeInterface::getName() and passing of type instances
2015-08-01 08:44:19 +02:00
Nicolas Grekas
a4d2d31f1b [Debug] Deprecate ExceptionHandler::createResponse 2015-08-01 08:34:55 +02:00
Nicolas Grekas
68fdb02485 Merge branch '2.7' into 2.8
* 2.7:
  [Debug] cleanup ExceptionHandlerTest
  bumped Symfony version to 2.7.4
  updated VERSION for 2.7.3
  updated CHANGELOG for 2.7.3
  fixed typo in translation keys
  Fix the return value on error for intl methods returning arrays
  Fix merge
  Fix missing _route parameter notice in RouterListener logging case

Conflicts:
	src/Symfony/Component/Debug/composer.json
	src/Symfony/Component/HttpKernel/Kernel.php
2015-08-01 08:34:21 +02:00
Fabien Potencier
0de8905919 feature #15285 [Config] deprecate cannotBeEmpty() for boolean and numeric nodes (xabbuh)
This PR was merged into the 2.8 branch.

Discussion
----------

[Config] deprecate cannotBeEmpty() for boolean and numeric nodes

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

Commits
-------

d4473f3 [Config] deprecate cannotBeEmpty() for boolean and numeric nodes
2015-08-01 08:21:41 +02:00
Fabien Potencier
9293c439a5 bug #15170 [Config] type specific check for emptiness (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Config] type specific check for emptiness

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

Commits
-------

0199fbf [Config] type specific check for emptiness
2015-08-01 08:17:42 +02:00
Fabien Potencier
85c10991d3 bug #15411 Fix the handling of null as locale in the stub intl classes (stof)
This PR was merged into the 2.3 branch.

Discussion
----------

Fix the handling of null as locale in the stub intl classes

The Intl extension accepts null as locale in formatters and the collator and will use the default locale in such case. Given that the stub implementation considers that the default locale is always 'en', it should be supported here too instead of forcing libraries to pass the default locale explicitly. For instance, ``Twig_Extensions_Extension_Intl`` relies on the fact that ``null`` as locale uses the default one: https://github.com/twigphp/Twig-extensions/pull/94

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

Commits
-------

d6db6ad Fix the handling of null as locale in the stub intl classes
2015-08-01 08:11:19 +02:00
Fabien Potencier
9058904d2b minor #15417 [Debug] cleanup ExceptionHandlerTest (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug] cleanup ExceptionHandlerTest

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

Commits
-------

51bacc6 [Debug] cleanup ExceptionHandlerTest
2015-08-01 07:54:51 +02:00
Diego Saint Esteben
75c98cba03 Added a way to define the priority of service decoration 2015-07-31 13:03:15 -03:00
Nicolas Grekas
51bacc6d41 [Debug] cleanup ExceptionHandlerTest 2015-07-31 17:18:52 +02:00
Fabien Potencier
15d6b8aceb bumped Symfony version to 2.7.4 2015-07-31 15:51:28 +02:00
Fabien Potencier
a9af4708b4 updated VERSION for 2.7.3 2015-07-31 15:24:45 +02:00
Fabien Potencier
c7ca0b3629 Merge branch '2.3' into 2.7
* 2.3:
  Fix the return value on error for intl methods returning arrays
2015-07-31 15:24:29 +02:00
Fabien Potencier
8d025cbc91 fixed typo in translation keys 2015-07-31 08:49:15 +02:00
Christophe Coevoet
7994513e04 Remove skipping of tests based on ICU data version whenever possible
Many tests being skipped based on the ICU data version don't actually
need it. They might be testing code paths not relying on Intl, or not
performing assertions on the values depending on the ICU data and so not
dependant on the exact ICU version being used.
2015-07-30 18:05:29 +02:00
Christophe Coevoet
801e5e2805 Fix the return value on error for intl methods returning arrays
When the resource is missing, an empty array should be returned rather
than null to respect the interface saying an array is always returned.
2015-07-30 16:28:34 +02:00
Christophe Coevoet
d6db6ad7f7 Fix the handling of null as locale in the stub intl classes
The Intl extension accepts null as locale in formatters and the
collator and will use the default locale in such case. Given that the
stub implementation considers that the default locale is always 'en', it
should be supported here too instead of forcing libraries to pass the
default locale explicitly.
2015-07-30 14:20:01 +02:00
Nicolas Grekas
bf8a923199 Merge branch '2.3' into 2.7
* 2.3:
  Fix merge
  Fix missing _route parameter notice in RouterListener logging case

Conflicts:
	src/Symfony/Component/HttpKernel/EventListener/RouterListener.php
2015-07-30 09:39:20 +02:00
Nicolas Grekas
6b02601e7b Fix merge 2015-07-30 09:37:09 +02:00
Daniel Espendiller
0ce91a6019 Fix missing _route parameter notice in RouterListener logging case 2015-07-29 09:46:44 +02:00
Nicolas Grekas
2655072bfd Merge branch '2.7' into 2.8
* 2.7:
  [php7] Fix for substr() always returning a string
  [Security] Do not save the target path in the session for a stateless firewall
  Fix calls to HttpCache#getSurrogate triggering E_USER_DEPRECATED errors.
  [DependencyInjection] fixed FrozenParameterBag and improved Parameter…
2015-07-29 09:12:56 +02:00
Christian Flothmann
ad6cb10e63 do not dump leading backslashes in class names 2015-07-28 20:25:33 +02:00
Nicolas Grekas
d6dfe9871c [php7] Fix for substr() always returning a string 2015-07-28 17:18:12 +02:00
Nicolas Grekas
c37387dc02 Merge branch '2.3' into 2.7
* 2.3:
  [php7] Fix for substr() always returning a string
  [Security] Do not save the target path in the session for a stateless firewall
  [DependencyInjection] fixed FrozenParameterBag and improved Parameter…

Conflicts:
	src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
	src/Symfony/Component/Security/Http/Firewall/ExceptionListener.php
2015-07-28 16:07:07 +02:00
Nicolas Grekas
77ee866dd8 [php7] Fix for substr() always returning a string 2015-07-28 14:38:40 +02:00
Jérémy Derussé
0e934637df Small optimization in AccessDecisionManager 2015-07-28 13:34:41 +02:00
WouterJ
a336f0e98e Skip ::class constant 2015-07-27 20:12:35 +02:00
Grégoire Pineau
335825363d [Security] Do not save the target path in the session for a stateless firewall 2015-07-26 20:14:09 +02:00
Matt Farmer
32d964ba39 Fix calls to HttpCache#getSurrogate triggering E_USER_DEPRECATED errors. 2015-07-26 20:11:55 +02:00
Fabien Potencier
f1ebfd7b47 minor #15172 [DependencyInjection] fixed FrozenParameterBag and improved Parameter… (Tomaz Ahlin)
This PR was squashed before being merged into the 2.3 branch (closes #15172).

Discussion
----------

[DependencyInjection] fixed FrozenParameterBag and improved Parameter…

The ParameterBagInterface was missing some @throws annotations, so the FrozenParameterBag class was a violation of Liskov subtitution principle. Also the ParameterBagInterface was missing the remove method.

(Optionally the ParameterBagInterface can be later split into two smaller interfaces, because the FrozenParameterBag shouldn't have the add, remove methods in the first place.)

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

I have also fixed removing elements from FrozenParameterBag, as introduced by @satahippy
https://github.com/symfony/DependencyInjection/pull/8

Commits
-------

3ad0794 [DependencyInjection] fixed FrozenParameterBag and improved Parameter…
2015-07-26 20:10:55 +02:00
Tomaz Ahlin
3ad0794aa1 [DependencyInjection] fixed FrozenParameterBag and improved Parameter… 2015-07-26 20:10:26 +02:00
Fabien Potencier
96e211d2da Merge branch '2.7' into 2.8
* 2.7:
  [Yaml] throw a ParseException on invalid data type
  [TwigBridge] type-dependent path discovery
  Resources as string have the same problem
  Introduce failing test case when a SplFileInfo object is passed to the extract() method in the TwigExtractor.
  #15331 add infos about deprecated classes to UPGRADE-3.0
  [Asset] removed unused private property.
  [Security] removed useless else condition in SwitchUserListener class.
  [travis] Tests deps=low with PHP 5.6
  [Console] Fix console output with closed stdout
2015-07-26 11:09:29 +02:00
Fabien Potencier
cd8ccffbad Merge branch '2.6' into 2.7
* 2.6:
  [Yaml] throw a ParseException on invalid data type
  #15331 add infos about deprecated classes to UPGRADE-3.0
  [Security] removed useless else condition in SwitchUserListener class.
  [travis] Tests deps=low with PHP 5.6
  [Console] Fix console output with closed stdout
2015-07-26 11:08:49 +02:00
Fabien Potencier
939c305374 Merge branch '2.3' into 2.6
* 2.3:
  #15331 add infos about deprecated classes to UPGRADE-3.0
  [Security] removed useless else condition in SwitchUserListener class.
  [travis] Tests deps=low with PHP 5.6
  [Console] Fix console output with closed stdout
2015-07-26 11:08:40 +02:00
Christian Flothmann
adc6b3067d [Yaml] throw a ParseException on invalid data type
Without this check, PHP would trigger a warning when an array was passed
to `trim()`. The parser must throw a `ParseException` instance on a
malformed YAML string instead.
2015-07-26 10:59:42 +02:00
Hugo Hamon
a1772b6a23 [Asset] removed unused private property. 2015-07-25 23:47:31 +03:00
Nicolas Grekas
415e6f658f Merge branch '2.7' into 2.8
* 2.7:
  [Twig+FrameworkBundle] Fix forward compat with Form 2.8
  [2.6] Static Code Analysis for Components
  [Security/Http] Fix test relying on a private property
  [Serializer] Fix bugs reported in b5990be491 (commitcomment-12301266)

Conflicts:
	src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig
	src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/widget_attributes.html.php
	src/Symfony/Component/Security/Http/Tests/Firewall/AnonymousAuthenticationListenerTest.php
2015-07-24 10:37:00 +02:00
Nicolas Grekas
38b9a88968 Merge branch '2.6' into 2.7
* 2.6:
  [2.6] Static Code Analysis for Components
  [Security/Http] Fix test relying on a private property
2015-07-24 10:19:55 +02:00
Fabien Potencier
8eb86818f2 minor #15337 [Form] Fix not-BC test assertion (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[Form] Fix not-BC test assertion

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

The 2.6 branch is failing because of this case for `Validation::API_VERSION_2_4`, that can't work because `$this->context` is not a mock object, thus has no "expect" method.
See https://travis-ci.org/symfony/symfony/jobs/72100346#L2902
This got unnoticed because only 2.6 is testing the 2.4 validator api.

Commits
-------

5ef7ae9 [Form] Fix not-BC test assertion
2015-07-24 09:10:29 +02:00
Fabien Potencier
e60795691c bug #15330 [Console] Fix console output with closed stdout (jakzal)
This PR was merged into the 2.3 branch.

Discussion
----------

[Console] Fix console output with closed stdout

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

Commits
-------

534d9fc [Console] Fix console output with closed stdout
2015-07-23 11:15:22 +02:00
Fabien Potencier
08f696c3e6 minor #15317 [2.6] Static Code Analysis for Components (kalessil)
This PR was squashed before being merged into the 2.6 branch (closes #15317).

Discussion
----------

[2.6] Static Code Analysis for Components

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

Static Code Analysis with Php Inspections (EA Extended):
    - fixed couple potential issues when code is running in a phar-file

Commits
-------

37a2353 [2.6] Static Code Analysis for Components
2015-07-23 04:17:28 +02:00
Vladimir Reznichenko
37a235394e [2.6] Static Code Analysis for Components 2015-07-23 04:17:26 +02:00
Fabien Potencier
49959000fc feature #15185 Implement resettable containers (stof)
This PR was merged into the 2.8 branch.

Discussion
----------

Implement resettable containers

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

This allows to release remove references to all services during shutdown, giving much more chances to destruct services and the container through refcounting rather than waiting GC, as it will break cycles between the container and container-aware services.

There is a small BC break for a very edge case: if someone keeps a reference to the container and then shutdowns the kernel, the container would now be cleared and so would not work as intended anymore. But I don't think it is a supported use case. If you shutdown the kernel, the container of this kernel is released by the kernel and should not be used anymore IMO.
Thus, shutting down the kernel generally does not happen except during tests on teardown.

I'm not sure a doc PR is needed here: users of the fullstack framework should never use this feature (the kernel is using it for them). What do you think @weaverryan ?

Commits
-------

4457745 Implement resettable containers
2015-07-23 04:06:16 +02:00
Nicolas Grekas
2d29ac1e10 [Security/Http] Fix test relying on a private property 2015-07-22 23:35:10 +02:00
Kévin Dunglas
65e9f268fe [Serializer] Fix bugs reported in b5990be491 (commitcomment-12301266) 2015-07-22 21:42:44 +02:00
Nicolas Grekas
5ef7ae9647 [Form] Fix not-BC test assertion 2015-07-22 19:02:20 +02:00
Fabien Potencier
86b218ec0e feature #15131 [Security] Moved Simple{Form,Pre}AuthenticatorInterfaces to Security\Http (WouterJ)
This PR was squashed before being merged into the 2.8 branch (closes #15131).

Discussion
----------

[Security] Moved Simple{Form,Pre}AuthenticatorInterfaces to Security\Http

Description
---

The `SimpleFormAuthenticatorInterface` and `SimplePreAuthenticatorInterface` rely on `Request`, which means it's a Http land class. This means they don't belong in core.

Having a form login that doesn't depend on the request is an option as well (e.g. a console application might use the question helper to implement a "form" login). However, then there is a need for a new abstraction of the request. I don't think it's worth it.

Furthermore, the only classes typehinting/relying on this interfaces can be found in `Security\Http`.

Implementation
---

The new interfaces extend the old ones for better backwards compability. Symfony doesn't trigger deprecation errors for interfaces, see 6f57b7b552

PR Info Table
---

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

Commits
-------

ebb2064 [Security] Moved Simple{Form,Pre}AuthenticatorInterfaces to Security\Http
2015-07-22 15:13:29 +02:00
WouterJ
ebb20640af [Security] Moved Simple{Form,Pre}AuthenticatorInterfaces to Security\Http 2015-07-22 15:13:13 +02:00
Hugo Hamon
1fc03155d4 [Security] removed useless else condition in SwitchUserListener class. 2015-07-22 15:05:05 +02:00
Nicolas Grekas
753812e746 [2.8] Fix 3.0 incompatible deps 2015-07-22 14:27:44 +02:00
Nicolas Grekas
6d82fb8c0c Merge branch '2.7' into 2.8
* 2.7:
  [HttpKernel] Fix lowest dep
  [Security] fix check for empty usernames
  [Form] updated exception message of ButtonBuilder::setRequestHandler()
  [travis] Fix deps=high jobs
  Fix typo 'assets.package' => 'assets.packages' in UPGRADE-2.7
  [Serializer] Simplify AbstractNormalizer::prepareForDenormalization()
  [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content
  [DependencyInjection] Remove unused code in XmlFileLoader
  [HttpFoundation] Behaviour change in PHP7 for substr
  bumped Symfony version to 2.3.32
  updated VERSION for 2.3.31
  update CONTRIBUTORS for 2.3.31
  updated CHANGELOG for 2.3.31

Conflicts:
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/HttpKernel/composer.json
2015-07-22 13:24:41 +02:00
Nicolas Grekas
5d841a2b03 Merge branch '2.6' into 2.7
* 2.6:
  [HttpKernel] Fix lowest dep

Conflicts:
	src/Symfony/Component/HttpKernel/composer.json
2015-07-22 13:20:14 +02:00
Nicolas Grekas
07b3fa9c1c [HttpKernel] Fix lowest dep 2015-07-22 13:18:53 +02:00
Nicolas Grekas
bf889d3534 Merge branch '2.6' into 2.7
* 2.6:
  [Security] fix check for empty usernames
  [Form] updated exception message of ButtonBuilder::setRequestHandler()
  [travis] Fix deps=high jobs
  [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content
  [DependencyInjection] Remove unused code in XmlFileLoader
  [HttpFoundation] Behaviour change in PHP7 for substr
  bumped Symfony version to 2.3.32
  updated VERSION for 2.3.31
  update CONTRIBUTORS for 2.3.31
  updated CHANGELOG for 2.3.31

Conflicts:
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/FrameworkBundle/composer.json
2015-07-22 12:11:00 +02:00
Nicolas Grekas
b0d97b71c5 Merge branch '2.3' into 2.6
* 2.3:
  [Security] fix check for empty usernames
  [Form] updated exception message of ButtonBuilder::setRequestHandler()
  [travis] Fix deps=high jobs
  [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content
  [DependencyInjection] Remove unused code in XmlFileLoader
  [HttpFoundation] Behaviour change in PHP7 for substr
  bumped Symfony version to 2.3.32
  updated VERSION for 2.3.31
  update CONTRIBUTORS for 2.3.31
  updated CHANGELOG for 2.3.31

Conflicts:
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php
	src/Symfony/Component/HttpKernel/Kernel.php
2015-07-22 12:08:40 +02:00
Christophe Coevoet
4457745929 Implement resettable containers
This allows to remove references to all services during shutdown, giving
much more chances to destruct services and the container through
refcounting rather than waiting GC, as it will break cycles between the
container and container-aware services.
2015-07-22 10:09:28 +02:00
Jakub Zalas
534d9fc560 [Console] Fix console output with closed stdout 2015-07-22 09:03:09 +01:00
Fabien Potencier
0da0f9eb43 bug #15326 [Security] fix check for empty usernames (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Security] fix check for empty usernames

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

Commits
-------

6585fe4 [Security] fix check for empty usernames
2015-07-22 09:58:47 +02:00
Christian Flothmann
6585fe45a2 [Security] fix check for empty usernames 2015-07-22 08:52:48 +02:00
Issei.M
b483ee2d02 [Form] updated exception message of ButtonBuilder::setRequestHandler() 2015-07-22 05:26:59 +02:00
Kévin Dunglas
72dce30309 [Serializer] Simplify AbstractNormalizer::prepareForDenormalization() 2015-07-19 14:40:25 +02:00
Fabien Potencier
5626d73992 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Fix Response::closeOutputBuffers() for HHVM 3.3
  [Console] Set QuestionHelper max attempts in tests
  [Form] Fix a BC break in the entity
  fix broken ChoiceQuestion
  bumped Symfony version to 2.7.3
  updated VERSION for 2.7.2
  updated CHANGELOG for 2.7.2
  bumped Symfony version to 2.6.11
  updated VERSION for 2.6.10
  updated CHANGELOG for 2.6.10
  [PropertyAccess] setValue & isWritable loops must only stops on reference and object. References can also be arrays and if the loop stops the value is never set in the object. (Breaks since 2.6.5 commit e3e4695)
2015-07-16 14:22:14 +02:00
Fabien Potencier
99f3475a2a Merge branch '2.6' into 2.7
* 2.6:
  [HttpFoundation] Fix Response::closeOutputBuffers() for HHVM 3.3
  bumped Symfony version to 2.6.11
  updated VERSION for 2.6.10
  updated CHANGELOG for 2.6.10
  [PropertyAccess] setValue & isWritable loops must only stops on reference and object. References can also be arrays and if the loop stops the value is never set in the object. (Breaks since 2.6.5 commit e3e4695)
2015-07-16 14:21:55 +02:00
Fabien Potencier
510b2d2de6 bug #15249 [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content (dunglas)
This PR was squashed before being merged into the 2.3 branch (closes #15249).

Discussion
----------

[HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content

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

* Allows to fix tests of https://github.com/symfony/psr-http-message-bridge with PHP 5.6.
* Ease the transition to PSR-7 (in PSR-7, almost everything is stream - #15186)

Maybe should I open it against 2.8 but it can be considered a bug fix at least for the part "returning a string as a resource".

Commits
-------

059964d [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content
2015-07-16 13:32:10 +02:00
Kévin Dunglas
059964daf3 [HttpFoundation] [PSR-7] Allow to use resources as content body and to return resources from string content 2015-07-16 13:31:59 +02:00
Jakub Zalas
ba129041ba [DependencyInjection] Forbid container cloning 2015-07-16 11:10:53 +01:00
Nicolas Grekas
1adb065d70 [HttpFoundation] Fix Response::closeOutputBuffers() for HHVM 3.3 2015-07-16 10:44:13 +02:00
Fabien Potencier
d6af4ad7bf bug #15282 [HttpFoundation] Behaviour change in PHP7 for substr (Nicofuma)
This PR was merged into the 2.3 branch.

Discussion
----------

[HttpFoundation] Behaviour change in PHP7 for substr

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

In PHP7 the behaviour of substr() changed.
To resume: "Truncating an entire string should result in a string."

See: https://bugs.php.net/bug.php?id=62922

Commits
-------

ba6000b [HttpFoundation] Behaviour change in PHP7 for substr
2015-07-16 01:29:21 +02:00
Kévin Dunglas
7fa79dadba [DependencyInjection] Remove unused code in XmlFileLoader 2015-07-15 23:26:13 +02:00
Christian Flothmann
0199fbf545 [Config] type specific check for emptiness 2015-07-15 19:51:32 +02:00
Christian Flothmann
d4473f30f8 [Config] deprecate cannotBeEmpty() for boolean and numeric nodes 2015-07-15 19:30:30 +02:00
Tristan Darricau
ba6000baff [HttpFoundation] Behaviour change in PHP7 for substr
In PHP7 the behaviour of substr() changed.
To resume: "Truncating an entire string should result in a string."

See: https://bugs.php.net/bug.php?id=62922
2015-07-15 15:30:38 +02:00
Jakub Zalas
23bc2649ba [Console] Set QuestionHelper max attempts in tests
Otherwise the process will block if a test fails.
2015-07-15 08:34:36 +01:00
Sebastiaan Stok
3fcf61e664 fix broken ChoiceQuestion 2015-07-14 11:47:38 +02:00
Fabien Potencier
7783573d16 bug #15250 [PropertyAccess] BC Break since 2.6.5 (Nicolas Macherey)
This PR was merged into the 2.6 branch.

Discussion
----------

[PropertyAccess] BC Break since 2.6.5

setValue & isWratable loops must only stops on reference and object. References can also be arrays and if the loop stops the value is never set in the object. (Breaks since 2.6.5 commit e3e4695)

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

This merge request fixes the following cases taht was working with version previous to 2.6.5:

A class with a property myArray which can be a multi dimensional array can now be accesed using myArray[foo][bar][baz]
Previously only myArray[foo] was working the break is since commit e3e4695

Commits
-------

1dcca1a [PropertyAccess] setValue & isWritable loops must only stops on reference and object. References can also be arrays and if the loop stops the value is never set in the object. (Breaks since 2.6.5 commit e3e4695)
2015-07-14 08:51:41 +02:00
Fabien Potencier
095bfd61ca bumped Symfony version to 2.7.3 2015-07-13 22:39:19 +02:00
Fabien Potencier
969d709ad4 updated VERSION for 2.7.2 2015-07-13 21:27:49 +02:00
Fabien Potencier
1e668dd805 bumped Symfony version to 2.6.11 2015-07-13 11:49:29 +02:00
Fabien Potencier
e246af5f3b updated VERSION for 2.6.10 2015-07-13 11:34:32 +02:00
Fabien Potencier
9962f36f97 bumped Symfony version to 2.3.32 2015-07-13 11:30:54 +02:00
Fabien Potencier
bd506a5e84 updated VERSION for 2.3.31 2015-07-13 11:12:26 +02:00
Fabien Potencier
b7d003e9ab Merge branch '2.7' into 2.8
* 2.7:
  fixed tests
  fixed some tests
  Remove excess whitespace
2015-07-13 11:10:01 +02:00
Fabien Potencier
0165636c89 Merge branch '2.6' into 2.7
* 2.6:
  fixed tests
  fixed some tests
  Remove excess whitespace
2015-07-13 11:09:54 +02:00
Fabien Potencier
c57c3f5479 fixed tests 2015-07-13 11:09:47 +02:00
Fabien Potencier
0a2ac57b08 Merge branch '2.3' into 2.6
* 2.3:
  fixed some tests
  Remove excess whitespace
2015-07-13 11:09:24 +02:00
Fabien Potencier
88a2b562fe fixed some tests 2015-07-13 11:08:56 +02:00
Nicolas Macherey
1dcca1a8df [PropertyAccess] setValue & isWritable loops must only stops on reference and object. References can also be arrays and if the loop stops the value is never set in the object. (Breaks since 2.6.5 commit e3e4695)
| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

This merge request fixes the following cases taht was working with version previous to 2.6.5:

A class with a property myArray which can be a multi dimensional array can now be accesed using myArray[foo][bar][baz]
Previously only myArray[foo] was working. The break is since commit e3e4695

This commit adds additionnal testing, and is rebased from 2.6 upstream
2015-07-10 06:45:33 +02:00
Ilya Antipenko
b1b52ada41 Remove excess whitespace 2015-07-09 21:38:49 +03:00
Damien Alexandre
85ae760d05 [Translation] Add parameters to DataCollectorTranslator 2015-07-09 18:26:53 +02:00
Fabien Potencier
f5fefeff49 Merge branch '2.7' into 2.8
* 2.7:
  Added 'default' color
  [HttpFoundation] Reload the session after regenerating its id
  [HttpFoundation] Add a test case to confirm a bug in session migration
  [Serializer] Fix ClassMetadata::sleep()
  [2.6] Static Code Analysis for Components and Bundles
  [Finder] Command::addAtIndex() fails with Command instance argument
  [DependencyInjection] Freeze also FrozenParameterBag::remove
  [Twig][Bridge] replaced `extends` with `use` in bootstrap_3_horizontal_layout.html.twig
  fix CS
  fixed CS
  Add a way to reset the singleton
  [Security] allow to use `method` in XML configs
  [Serializer] Fix Groups tests.
  Remove duplicate example
  Remove var not used due to returning early (introduced in 8982c32)
  [Serializer] Fix Groups PHPDoc
  Enhance hhvm test skip message
  fix for legacy asset() with EmptyVersionStrategy
  [Form] Added upgrade notes for #15061
2015-07-09 18:11:14 +02:00
Fabien Potencier
175af7f3ac Merge branch '2.6' into 2.7
* 2.6:
  Added 'default' color
  [HttpFoundation] Reload the session after regenerating its id
  [HttpFoundation] Add a test case to confirm a bug in session migration
  [2.6] Static Code Analysis for Components and Bundles
  [Finder] Command::addAtIndex() fails with Command instance argument
  [DependencyInjection] Freeze also FrozenParameterBag::remove
  [Twig][Bridge] replaced `extends` with `use` in bootstrap_3_horizontal_layout.html.twig
  fix CS
  fixed CS
  Add a way to reset the singleton
  [Security] allow to use `method` in XML configs
  Remove duplicate example
  Remove var not used due to returning early (introduced in 8982c32)
  Enhance hhvm test skip message
2015-07-09 18:07:40 +02:00
Fabien Potencier
e6cc4918bf Merge branch '2.3' into 2.6
* 2.3:
  Added 'default' color
  [HttpFoundation] Reload the session after regenerating its id
  [HttpFoundation] Add a test case to confirm a bug in session migration
  [Finder] Command::addAtIndex() fails with Command instance argument
  [DependencyInjection] Freeze also FrozenParameterBag::remove
  fix CS
  fixed CS
  Add a way to reset the singleton
  [Security] allow to use `method` in XML configs
  Remove var not used due to returning early (introduced in 8982c32)
  Enhance hhvm test skip message
2015-07-09 18:02:48 +02:00
Joshua Thijssen
c4bf2e637c Added 'default' color 2015-07-09 17:58:42 +02:00
Jakub Zalas
99b9c78b00 [HttpFoundation] Reload the session after regenerating its id 2015-07-08 20:32:24 +01:00
Jakub Zalas
eda5cb1c27 [HttpFoundation] Add a test case to confirm a bug in session migration 2015-07-08 20:31:33 +01:00
Fabien Potencier
b2fddecde9 bug #15176 [Serializer] Fix ClassMetadata::sleep() (dunglas)
This PR was squashed before being merged into the 2.7 branch (closes #15176).

Discussion
----------

[Serializer] Fix ClassMetadata::sleep()

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

Fix a bug with the `sleep()` method. It is blocking under when using the APC metadata cache.

Commits
-------

2f42801 [Serializer] Fix ClassMetadata::sleep()
2015-07-08 08:12:51 +02:00
Kévin Dunglas
2f4280110d [Serializer] Fix ClassMetadata::sleep() 2015-07-08 08:12:45 +02:00
Vladimir Reznichenko
1dac1277a3 [2.6] Static Code Analysis for Components and Bundles 2015-07-08 07:59:48 +02:00
Fabien Potencier
63e02b87af bug #15223 [Finder] Command::addAtIndex() fails with Command instance argument (thunderer)
This PR was squashed before being merged into the 2.3 branch (closes #15223).

Discussion
----------

[Finder] Command::addAtIndex() fails with Command instance argument

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

Fixed reported bug #14384 and added test case for it. This is a second PR as previous #14385 went bad after I failed to rebase 2.3 branch properly.

Commits
-------

2aff566 [Finder] Command::addAtIndex() fails with Command instance argument
2015-07-08 07:54:33 +02:00
Tomasz Kowalczyk
2aff5660b2 [Finder] Command::addAtIndex() fails with Command instance argument 2015-07-08 07:54:32 +02:00
Fabien Potencier
e67249e4d5 bug #15220 [DependencyInjection] Freeze also FrozenParameterBag::remove (lyrixx)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] Freeze also FrozenParameterBag::remove

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

Commits
-------

4a72c44 [DependencyInjection] Freeze also FrozenParameterBag::remove
2015-07-07 20:27:32 +02:00
Grégoire Pineau
4a72c441d5 [DependencyInjection] Freeze also FrozenParameterBag::remove 2015-07-07 14:38:28 +02:00
Fabien Potencier
4706a90e9d minor #15204 CS fixes for 2.3 (keradus)
This PR was merged into the 2.3 branch.

Discussion
----------

CS fixes for 2.3

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

To keep fabbot.io happy ;)

Commits
-------

464b67e fix CS
2015-07-07 09:31:08 +02:00
Dariusz Ruminski
464b67ed09 fix CS 2015-07-05 16:01:47 +02:00
Fabien Potencier
e3b225f4ba fixed CS 2015-07-05 15:20:07 +02:00
Daniel Wehner
0096266009 Add a way to reset the singleton 2015-07-05 15:17:51 +02:00
Fabien Potencier
aea7f98107 minor #15193 [Serializer] Fix Groups tests. (dunglas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Serializer] Fix Groups tests.

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

2bd8fb8 [Serializer] Fix Groups tests.
2015-07-04 12:13:01 +02:00
Kévin Dunglas
2bd8fb8f97 [Serializer] Fix Groups tests. 2015-07-04 12:02:28 +02:00
Dave Hulbert
da5218f2ae Remove var not used due to returning early (introduced in 8982c32) 2015-07-04 00:45:56 +02:00
Kévin Dunglas
3233c2fc14 [Serializer] Fix Groups PHPDoc 2015-07-03 14:45:08 +02:00
Nicolas Grekas
5f4015c3cd Enhance hhvm test skip message 2015-07-03 07:54:45 +02:00
Grégoire Pineau
2bea3731f9 [VarDumper] Ingore PHPUnit and Prophecy object when they are nested 2015-07-02 16:25:26 +02:00
Bernhard Schussek
3d9e5de2b9 [Form] Deprecated FormTypeInterface::getName() and passing of type instances 2015-07-02 10:02:46 +02:00
Nicolas Grekas
564c8e1ebe Merge branch '2.7' into 2.8
* 2.7:
  [travis] start hhvm first
  [Validator] always evaluate binary format when changed
2015-07-02 08:17:21 +02:00
Nicolas Grekas
8c999b5c55 Merge branch '2.6' into 2.7
* 2.6:
  [travis] start hhvm first
  [Validator] always evaluate binary format when changed

Conflicts:
	.travis.yml
2015-07-02 08:17:05 +02:00
Fabien Potencier
fc6ed5bee3 feature #15141 [DX] [Security] Renamed Token#getKey() to getSecret() (WouterJ)
This PR was squashed before being merged into the 2.8 branch (closes #15141).

Discussion
----------

[DX] [Security] Renamed Token#getKey() to getSecret()

There are 2 very vague parameter names in the authentication process: `$providerKey` and `$key`. Some tokens/providers have the first one, some tokens/providers the second one and some both. An overview:

| Token | `providerKey` | `key`
| --- | --- | ---
| `AnonymousToken` | - | yes
| `PreAuth...Token` | yes | -
| `RememberMeToken` | yes | yes
| `UsernamePasswordToken` | yes | -

Both names are extremely general and their PHPdocs contains pure no-shit-sherlock-descriptions :squirrel: (like "The key."). This made me and @iltar think it's just an inconsistency and they have the same meaning.
...until we dived deeper into the code and came to the conclusion that `$key` has a Security task (while `$providerKey` doesn't really). If it takes people connected to Symfony internals 30+ minutes to find this out, it should be considered for an improvement imo.

So here is our suggestion: **Rename `$key` to `$secret`**. This explains much better what the value of the string has to be (for instance, it's important that the string is not easily guessable and cannot be found out, according to the Spring docs). It also explains the usage better (it's used as a replacement for credentials and to hash the RememberMeToken).

**Tl;dr**: `$key` and `$providerKey` are too general names, let's improve DX by renaming them. This PR tackles `$key` by renaming it to `$secret`.

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

*My excuse for the completely unrelated branch name*

Commits
-------

24e0eb6 [DX] [Security] Renamed Token#getKey() to getSecret()
2015-07-02 01:04:20 +02:00
WouterJ
24e0eb6453 [DX] [Security] Renamed Token#getKey() to getSecret() 2015-07-02 01:04:13 +02:00
Fabien Potencier
c6d9af374f bug #15115 [Validator] always evaluate binary format when changed (xabbuh)
This PR was merged into the 2.6 branch.

Discussion
----------

[Validator] always evaluate binary format when changed

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

Commits
-------

2ad7e67 [Validator] always evaluate binary format when changed
2015-07-01 21:58:06 +02:00
Christian Flothmann
2ad7e679cd [Validator] always evaluate binary format when changed 2015-07-01 20:29:17 +02:00
Nicolas Grekas
f59a0baa95 Merge branch '2.7' into 2.8
* 2.7:
  Update DateTimeToArrayTransformer.php
  Mock microtime() and time() in transient tests
  Azerbaijani language pluralization rule
  Move HHVM tests out of the allowed failures
2015-07-01 20:24:26 +02:00
Nicolas Grekas
734fdbe702 [VarDumper] Fix tests for HHVM 2015-07-01 20:24:23 +02:00
Nicolas Grekas
4b9446edf8 Merge branch '2.6' into 2.7
* 2.6:
  Update DateTimeToArrayTransformer.php
  Mock microtime() and time() in transient tests
  Azerbaijani language pluralization rule
  Move HHVM tests out of the allowed failures
2015-07-01 20:23:16 +02:00
Nicolas Grekas
d5cbc46cd9 Merge branch '2.3' into 2.6
* 2.3:
  Update DateTimeToArrayTransformer.php
  Mock microtime() and time() in transient tests
  Azerbaijani language pluralization rule
  Move HHVM tests out of the allowed failures
2015-07-01 20:23:01 +02:00
Fabien Potencier
6bcdee057e minor #15166 Mock microtime() and time() in transient tests (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

Mock microtime() and time() in transient tests

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

Commits
-------

8319ca3 Mock microtime() and time() in transient tests
2015-07-01 19:11:21 +02:00
zhil
27b824a6b7 Update DateTimeToArrayTransformer.php 2015-07-01 19:05:17 +02:00
Nicolas Grekas
8319ca3b05 Mock microtime() and time() in transient tests 2015-07-01 18:07:08 +02:00
Şəhriyar İmanov
efd927a660 Azerbaijani language pluralization rule
In AZ, as in TR, pluralization is always 0: 

0 kitab (zero books)
1 kitab (1 book)
3 kitab (3 books)
104 kitab (104 books)

Apparently ZF ruleset was wrong in the first place :)
2015-07-01 16:29:20 +02:00
Abdellatif Ait boudad
05f3c3db7b Merge remote-tracking branch 'origin/2.7' into 2.8
Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
2015-07-01 14:16:54 +00:00
Nicolas Grekas
b4fc321912 Fix merge 2015-07-01 14:07:40 +02:00
Nicolas Grekas
eb179f9032 Merge branch '2.6' into 2.7
* 2.6:
  [2.6] Towards 100% HHVM compat
  [Security/Http] Fix test
  [Stopwatch] Fix test
  Minor fixes
  Towards 100% HHVM compat
  unify default AccessDeniedExeption message
  trigger event with right user (add test)
  [Security] Initialize SwitchUserEvent::targetUser on attemptExitUser
  [Form] Fixed: Data mappers always receive forms indexed by their names

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Controller/Controller.php
	src/Symfony/Component/VarDumper/Tests/CliDumperTest.php
	src/Symfony/Component/VarDumper/Tests/HtmlDumperTest.php
2015-07-01 13:25:50 +02:00
Fabien Potencier
bfa28d6e41 feature #15154 [Validator] Added missing error codes and turned codes into UUIDs (webmozart)
This PR was merged into the 2.8 branch.

Discussion
----------

[Validator] Added missing error codes and turned codes into UUIDs

Reopened #12388 on the 2.8 branch.

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

With the current implementation of error codes, checking which error occurred is unnecessarily complex:

```php
if ($violation->getConstraint() instanceof Length && Length::TOO_SHORT_ERROR === $violation->getCode()) {
    // ...
}
```

Also, the code is completely missing for some constraints. This is fixed now. By using UUIDs, the check is reduced to:

```php
if (Length::TOO_SHORT_ERROR === $violation->getCode()) {
    // ...
}
```

Also, APIs can simply output the error code and the name of the error without needing to point to the constraint as well.

Before:

```json
[
    {
        "code": "1",
        "name": "TOO_SHORT_ERROR",
        "message": "This value is too short. ...",
        "constraint": "Symfony\\Component\\Validator\\Constraints\\Length"
    }
]
```

After:

```json
[
    {
        "code": "9ff3fdc4-b214-49db-8718-39c315e33d45",
        "name": "TOO_SHORT_ERROR",
        "message": "This value is too short. ..."
    }
]
```

This makes it possible to implement a service on symfony.com which looks up error codes, e.g.

symfony.com/error?code=9ff3fdc4-b214-49db-8718-39c315e33d45

Such a URL could redirect directly to the documentation of the appropriate constraint. We could even support user-submitted error codes which redirect to the documentation of that constraint.

Commits
-------

8874e88 [Validator] Added missing error codes and turned codes into UUIDs
2015-07-01 13:21:15 +02:00
Nicolas Grekas
8a782556eb [2.6] Towards 100% HHVM compat 2015-07-01 12:03:42 +02:00
Nicolas Grekas
6a45129b41 [Security/Http] Fix test 2015-06-30 18:51:15 +02:00
Nicolas Grekas
700487002f Merge branch '2.3' into 2.6
* 2.3:
  [Stopwatch] Fix test
2015-06-30 18:49:57 +02:00
Nicolas Grekas
9de0d60b2c [Stopwatch] Fix test 2015-06-30 18:34:54 +02:00
Nicolas Grekas
c53ee35a2e Merge branch '2.3' into 2.6
* 2.3:
  Minor fixes
  Towards 100% HHVM compat
  trigger event with right user (add test)
  [Security] Initialize SwitchUserEvent::targetUser on attemptExitUser
  [Form] Fixed: Data mappers always receive forms indexed by their names

Conflicts:
	src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
	src/Symfony/Component/Filesystem/Filesystem.php
	src/Symfony/Component/Process/Tests/AbstractProcessTest.php
2015-06-30 18:10:16 +02:00
Nicolas Grekas
6e1ae53fea Minor fixes 2015-06-30 18:05:31 +02:00
Fabien Potencier
0020680d92 bug #15146 Towards 100% HHVM compat (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

Towards 100% HHVM compat

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

Failing components:
- [x] Debug
- [x] DependencyInjection
- [x] Filesystem
- [x] Form
- [x] HttpFoundation
- [x] Process
- [x] Routing

Related HHVM issues:
- https://github.com/facebook/hhvm/issues/5562
- https://github.com/facebook/hhvm/issues/5561
- https://github.com/facebook/hhvm/issues/5330
- https://github.com/facebook/hhvm/issues/3558
- https://github.com/facebook/hhvm/issues/4901

Commits
-------

b9a76ba Towards 100% HHVM compat
2015-06-30 17:31:35 +02:00
Bernhard Schussek
8874e88384 [Validator] Added missing error codes and turned codes into UUIDs 2015-06-30 16:06:42 +02:00
Nicolas Grekas
b9a76bab5c Towards 100% HHVM compat 2015-06-30 15:39:12 +02:00
Fabien Potencier
32cbfd49d4 feature #15096 [DependencyInjection] Allow anonymous DefinitionDecorator resolving (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] Allow anonymous DefinitionDecorator resolving

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

This PR allows injecting anonymous DefinitionDecorator into services' arguments/properties, such as:

```php
$container->register('foo_service_name', 'FooClass')
    ->setProperty('bar', new DefinitionDecorator('definition_decorated_service'))
;
```

Commits
-------

e5763ce [DependencyInjection] Allow anonymous DefinitionDecorator resolving
2015-06-30 14:51:42 +02:00
Fabien Potencier
b16fc6c2f6 bug #15061 [Form] Fixed handling of choices passed in choice groups (webmozart)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fixed handling of choices passed in choice groups

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

I introduced a bug in the 2.7 ChoiceList implementation when choices are passed as groups:

```
$form->add('response', 'choice', array(
    'choices' => array(
        'Decided' => array($yesObj, $noObj),
        'Undecided' => array($maybeObj),
    ),
    // use getName() for the labels
    'choice_label' => 'name',
    'choices_as_values' => true,
));
```

In this example, since the choices `$yesObj` and `$maybeObj` have the same array index `0`, the same label is displayed for the two options. The problem is that we rely on the keys passed in the "choices" option to identify choices in a choice list (which are, as you see, not guaranteed to be free of duplicates).

This PR changes the new choice list implementation to identify choices by values instead. We already have the guarantee that choices can be identified uniquely by their string values.

This PR should be included in 2.7.2 to fix the regression.

Unfortunately, a few BC breaks in the new implementation are necessary to make this fix:

* The legacy `ChoiceListInterface` was reverted to how it was in 2.6 and does *not* extend the new `ChoiceListInterface` anymore.
* As a consequence, legacy choice lists need to be wrapped into a `LegacyChoiceListAdapter` when they are passed to any place in the framework where a new choice list is expected.
* The new `ChoiceListInterface` has two additional methods `getStructuredValues()` and `getOriginalKeys()` now.
* `ArrayKeyChoiceList::toArrayKey()` was marked as internal.
* `ChoiceListFactoryInterface::createView()` does not accept arrays and Traversables anymore for the `$groupBy` parameter (for simplicity).

@fabpot Where should we document the upgrade path for 2.7.1 => 2.7.2?

Commits
-------

7623dc8 [Form] Fixed handling of choices passed in choice groups
2015-06-30 14:46:52 +02:00
Fabien Potencier
38c08d1fb3 bug #15069 [Form] Fixed: Data mappers always receive forms indexed by their names (webmozart)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fixed: Data mappers always receive forms indexed by their names

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

This PR facilitates writing domain-specific data mappers, since it guarantees that you can access forms by name in the data mapper methods. Currently, `Form::add()` does not set the index of the array passed to the data mapper to the form's name.

Commits
-------

86b7fe5 [Form] Fixed: Data mappers always receive forms indexed by their names
2015-06-30 07:54:26 +02:00
Fabien Potencier
c20720f9f6 bug #15142 Fix choice translation domain for expanded choice widget (jvasseur)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix choice translation domain for expanded choice widget

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

This fix the form component using the translation_domain instead of the choice_translation_domain for expanded choice widgets.

I had to add the possibility to skip label translation when using ```translation_domain => false``` to do this fix so this can be considered a new feature to.

Commits
-------

52755ba Fix choice translation domain for expanded choice widget
2015-06-30 07:47:57 +02:00
Dave Hulbert
8e41a5b22a Fix param order of assertEquals (expected, actual) in test for Finder\Glob 2015-06-29 20:56:37 +01:00
Jérôme Vasseur
52755ba26d Fix choice translation domain for expanded choice widget 2015-06-29 21:23:41 +02:00
Christian Flothmann
87e7709b7b unify default AccessDeniedExeption message 2015-06-29 20:24:24 +02:00
Christian Flothmann
f999217a96 trigger event with right user (add test) 2015-06-28 20:33:21 +02:00
Richard van Laak
01ee3f6cda [Security] Initialize SwitchUserEvent::targetUser on attemptExitUser
The `SwitchUserEvent` is triggered in case an account is switched. This works okay while switching to the user, but on exit the `SwitchUserEvent` is triggered again with the original User. That User was not initialized by the provider yet.

load user by UserInterface instead of username
2015-06-28 20:33:21 +02:00
Fabien Potencier
268210bcec fixed CS 2015-06-28 20:28:18 +02:00
twifty
1df4ebecfd added remove option to ignoreExtraKeys 2015-06-28 20:28:03 +02:00
Fabien Potencier
b6dbfa4b73 minor #15136 Fix quoting style consistency (2.7) (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix quoting style consistency (2.7)

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

Follows up #15129.

Commits
-------

2aab007 Fix quoting style consistency.
2015-06-28 19:27:31 +02:00
Fabien Potencier
873e3d9a74 Merge branch '2.6' into 2.7
* 2.6:
  [2.6][Validator] Fix BC for Validator's validate method
  Very small typo fix
  Fix quoting style consistency.
  [DependencyInjection] Fail when dumping a Definition with no class nor factory
  Normalizing recursively - see #9096
  No change - the normalizeParams is a copy-and-paste of the earlier logic
  fixes issue with logging array of non-utf8 data
  fix validation for Maestro UK card numbers

Conflicts:
	src/Symfony/Component/Security/Http/Firewall/DigestAuthenticationListener.php
	src/Symfony/Component/Validator/Validator/LegacyValidator.php
2015-06-28 19:13:14 +02:00
Fabien Potencier
e36e83117b Merge branch '2.3' into 2.6
* 2.3:
  Fix quoting style consistency.
  [DependencyInjection] Fail when dumping a Definition with no class nor factory
  Normalizing recursively - see #9096
  No change - the normalizeParams is a copy-and-paste of the earlier logic
  fixes issue with logging array of non-utf8 data
  fix validation for Maestro UK card numbers
2015-06-28 19:11:14 +02:00
Fabien Potencier
6e4563e7ee bug #15126 [2.6][Validator] Fix BC for Validator's validate method (michalmarcinkowski)
This PR was merged into the 2.6 branch.

Discussion
----------

[2.6][Validator] Fix BC for Validator's validate method

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

This fix makes method call ``` $validator->validate($value, array()); ``` backward compatible and does not throw

```
[Symfony\Component\Validator\Exception\NoSuchMetadataException]

The class or interface "XXX" does not exist.
```

when the ``` $value ``` is a scalar type.

Commits
-------

ffe25dc [2.6][Validator] Fix BC for Validator's validate method
2015-06-28 19:09:43 +02:00
Fabien Potencier
cf6296b3db bug #15101 [Form] Fixed compatibility with FormTypeInterface implementations that don't extend AbstractType (webmozart)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fixed compatibility with FormTypeInterface implementations that don't extend AbstractType

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

Commits
-------

4a1ad7e [Form] Fixed compatibility with FormTypeInterface implementations that don't extend AbstractType
2015-06-28 19:06:19 +02:00
michalmarcinkowski
ffe25dc921 [2.6][Validator] Fix BC for Validator's validate method 2015-06-28 16:52:59 +02:00
ogizanagi
2aab0073bd Fix quoting style consistency. 2015-06-28 12:39:54 +02:00
ogizanagi
57d30f9746 Fix quoting style consistency. 2015-06-28 12:13:08 +02:00
Fabien Potencier
e93a3d7896 bug #15083 [DependencyInjection] Fail when dumping a Definition with no class nor factory (nicolas-grekas)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] Fail when dumping a Definition with no class nor factory

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

I tried creating an anonymous inline service with a DefinitionDecorator, but that did not work.
Here is the fix.

Commits
-------

23ad4ad [DependencyInjection] Fail when dumping a Definition with no class nor factory
2015-06-28 09:25:22 +02:00
Nicolas Grekas
23ad4ad133 [DependencyInjection] Fail when dumping a Definition with no class nor factory 2015-06-28 09:23:14 +02:00
Christian Flothmann
f24532a04e fix validation for Maestro UK card numbers 2015-06-27 23:20:18 +02:00
Tobias Schultze
dd504d4adf Merge branch '2.6' into 2.7 2015-06-27 22:17:00 +02:00
Tobias Schultze
cbca187a49 Merge branch '2.3' into 2.6
Conflicts:
	src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig
	src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget_collapsed.html.php
2015-06-27 22:15:38 +02:00
Restless-ET
1a5c4c6c93 [Translation][Form][choice] empty_value shouldn't be translated when it has an empty value 2015-06-27 19:52:55 +02:00
Abdellatif Ait boudad
51212acbff [Validator][callback constraint] include class name in ConstraintDefinitionException. 2015-06-27 16:22:07 +02:00
Fabien Potencier
3ef7a1f6d6 bug #15117 [Form] fixed sending non array data on submit to ResizeListener (BruceWouaigne)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] fixed sending non array data on submit to ResizeListener

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

I agree with @Tobion that #13851 is a bug fix and therefore should be applied on the `2.3` branch too.

Commits
-------

0f185c9 [Form] [EventListener] fixed sending non array data on submit to ResizeListener
2015-06-27 16:14:07 +02:00