Commit Graph

377 Commits

Author SHA1 Message Date
Roland Franssen
526b852d2c expectedException expects FQCN 2016-09-24 09:47:20 +00:00
Julien DIDIER
565a98499c throw exception when extra attributes are used during an object denormalization 2016-09-22 01:36:40 +02:00
Fabien Potencier
47657e55d2 feature #19197 [Serializer][FrameworkBundle] Add a CSV encoder (dunglas)
This PR was squashed before being merged into the 3.2-dev branch (closes #19197).

Discussion
----------

[Serializer][FrameworkBundle] Add a CSV encoder

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

Usage:

```php
use Symfony\Component\Serializer\Serializer;
use Symfony\Component\Serializer\Encoder\CsvEncoder;
use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;

$serializer = new Serializer(array(new ObjectNormalizer()), array(new CsvEncoder()));
// or $serializer = $container->get('serializer'); when using the full stack framework
$serializer->encode($something, 'csv');
$serializer->decode(<<<'CSV'
id,name
1,Kévin
CSV
, 'csv');
```

CSV files must contain a header line with property names as keys.

ping @clementtalleu @Simperfit @gorghoa

Commits
-------

e71f5be [Serializer][FrameworkBundle] Add a CSV encoder
2016-09-14 15:14:31 -07:00
Kévin Dunglas
e71f5bea96 [Serializer][FrameworkBundle] Add a CSV encoder 2016-09-14 15:10:23 -07:00
Fabien Potencier
d6d6a47fcf feature #19326 [Serializer][FrameworkBundle] Add a YAML encoder (dunglas)
This PR was squashed before being merged into the 3.2-dev branch (closes #19326).

Discussion
----------

[Serializer][FrameworkBundle] Add a YAML encoder

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

Add YAML support to the Serializer.

Commits
-------

9366a7d [Serializer][FrameworkBundle] Add a YAML encoder
2016-09-14 14:57:14 -07:00
Kévin Dunglas
9366a7dc77 [Serializer][FrameworkBundle] Add a YAML encoder 2016-09-14 14:57:11 -07:00
Nicolas Grekas
703db1e3b5 Merge branch '3.1'
* 3.1:
  [travis] Use 7.0 until 7.1 is fixed
  [DIC] Fix service autowiring inheritance
  [Serializer] Fix denormalization of arrays
  [SecurityBundle] Add missing deprecation notice for form_login.intention
  Verify explicitly that the request IP is a valid IPv4 address
  [WebProfilerBundle] replaces tabs characters by spaces.
2016-08-22 14:11:39 +02:00
Kévin Dunglas
99c582b432 [Serializer] Fix denormalization of arrays 2016-08-19 08:12:52 -07:00
Théo FIDRY
e437e0408e fix reflection type 2016-07-06 17:58:01 +01:00
Théo FIDRY
d4cdb00b32
fix CS 2016-07-05 14:32:28 +01:00
Théo FIDRY
93608dcea0
Add deprecation message 2016-07-05 11:41:11 +01:00
Théo FIDRY
f46a1766d5
Apply patch 2016-07-04 22:12:08 +01:00
Théo FIDRY
f361e52c09
fix tests 2016-07-04 21:56:52 +01:00
Théo FIDRY
e64e999a39 Address comments 2016-07-03 22:13:37 +01:00
Théo FIDRY
e99a90b9e9
Add tests 2016-07-03 12:09:45 +01:00
Ener-Getick
9be648420d
[Serializer] Allow to use easily static constructors 2016-06-26 21:23:55 +02:00
Fabien Potencier
a39afd001f fixed CS 2016-06-21 08:06:14 +02:00
Fabien Potencier
9cbec2c4fa Merge branch '3.0' into 3.1
* 3.0:
  fixed CS
  fixed CS
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  Mention generating absolute urls in UPGRADE files and CHANGELOG
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  Fixed typo in PHPDoc
2016-06-21 07:59:09 +02:00
Fabien Potencier
9800cdd8f4 Merge branch '2.8' into 3.0
* 2.8:
  fixed CS
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  Mention generating absolute urls in UPGRADE files and CHANGELOG
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  Fixed typo in PHPDoc
2016-06-21 07:48:46 +02:00
Fabien Potencier
548f3d0339 Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  Fixed typo in PHPDoc
2016-06-21 07:36:02 +02:00
Fabien Potencier
7cc3ca59d0 fixed CS 2016-06-20 18:47:20 +02:00
Christian Flothmann
240cf0aaa8 [#18838] add a test to avoid regressions 2016-05-30 10:23:04 +02:00
Christian Flothmann
37cacc4874 [Serializer][#18837] adding a test 2016-05-25 22:21:27 +02:00
Fabien Potencier
330c09b390 Merge branch '3.0' into 3.1
* 3.0:
  [Yaml] fix exception contexts
  People - person singularization
  [Yaml] properly handle unindented collections
  [Serializer] Add test for ignored attributes during denormalization
  chomp newlines only at the end of YAML documents
  Fixed server status command when port has been omitted
  Update UPGRADE FROM 2.x to 3.0
  fix removed commands wording in upgrade file
  Catch \Throwable
  Catch \Throwable
  [DependencyInjection] Avoid generating call_user_func in more cases
  [Validator] Support for DateTimeImmutable
  [FrameworkBundle] update upgrade instructions
  Use levenshtein level for better Bundle matching
  [WebProfilerBundle] Fix CORS ajax security issues
  remove methods that were needed for PHP 5.3
  [DX][DI] Make Autowiring exceptions more future friendly
2016-05-24 12:06:56 +02:00
Fabien Potencier
90dcd92691 Merge branch '2.8' into 3.0
* 2.8:
  [Yaml] fix exception contexts
  People - person singularization
  [Yaml] properly handle unindented collections
  [Serializer] Add test for ignored attributes during denormalization
  chomp newlines only at the end of YAML documents
  Fixed server status command when port has been omitted
  Update UPGRADE FROM 2.x to 3.0
  fix removed commands wording in upgrade file
  Catch \Throwable
  Catch \Throwable
  Use levenshtein level for better Bundle matching
  [WebProfilerBundle] Fix CORS ajax security issues
  [DX][DI] Make Autowiring exceptions more future friendly
2016-05-24 12:03:10 +02:00
Fabien Potencier
5cb0ad3f81 Merge branch '2.7' into 2.8
* 2.7:
  [Yaml] fix exception contexts
  People - person singularization
  [Yaml] properly handle unindented collections
  [Serializer] Add test for ignored attributes during denormalization
  chomp newlines only at the end of YAML documents
  Fixed server status command when port has been omitted
  Update UPGRADE FROM 2.x to 3.0
  Catch \Throwable
  Use levenshtein level for better Bundle matching
  [WebProfilerBundle] Fix CORS ajax security issues
2016-05-24 12:00:02 +02:00
Kévin Dunglas
c2f7fedfd6 [Serializer] Add test for ignored attributes during denormalization 2016-05-22 13:47:44 +02:00
Kévin Dunglas
5194482ed5 [Serializer] Integrate the PropertyInfo Component
Recursive denormalization handling and hardening.
2016-04-19 17:00:22 +02:00
Mihai Stancu
6b464b01aa Recursive denormalize using PropertyInfo
- Refactored PR 14844 "Denormalize with typehinting"
- Now using PropertyInfo to extract type information
- Updated tests
- Updated composer.json
2016-04-18 21:22:06 +02:00
Kévin Dunglas
26a07fb2ab [Serializer] Harden the ObjectNormalizer 2016-04-18 19:37:45 +02:00
Nicolas Grekas
fe012e8abb Merge branch '3.0'
* 3.0: (28 commits)
  [Console] Fix an autocompletion question helper issue with non-sequentially indexed choices
  [Process] Fix pipes handling
  [Finder] Partially revert #17134 to fix a regression
  Mentioned the deprecation of deep parameters in UPGRADE files
  [HttpKernel] Fix mem usage when stripping the prod container
  [Filesystem] Fix false positive in ->remove()
  [Filesystem] Cleanup/sync with 2.3
  [Validator] Fix the locale validator so it treats a locale alias as a valid locale
  [HttpFoundation] Fix transient test
  [HttpFoundation] Add a dependency on the mbstring polyfill
  [2.7] update readme files for new components
  add readme files where missing
  [2.8] update readme files for new components
  fix lowest TwigBridge deps versions
  reference form type by name on Symfony 2.7
  [EventDispatcher] fix syntax error
  Don't use reflections when possible
  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
  ...

Conflicts:
	src/Symfony/Component/Ldap/README.md
	src/Symfony/Component/Security/Core/README.md
	src/Symfony/Component/Security/Csrf/README.md
	src/Symfony/Component/Security/Http/README.md
2016-03-10 12:16:56 +01:00
Nicolas Grekas
5380d68431 Merge branch '2.8' into 3.0
* 2.8: (25 commits)
  [Console] Fix an autocompletion question helper issue with non-sequentially indexed choices
  [Process] Fix pipes handling
  Mentioned the deprecation of deep parameters in UPGRADE files
  [Filesystem] Fix false positive in ->remove()
  [Filesystem] Cleanup/sync with 2.3
  [Validator] Fix the locale validator so it treats a locale alias as a valid locale
  [HttpFoundation] Fix transient test
  [HttpFoundation] Add a dependency on the mbstring polyfill
  [2.7] update readme files for new components
  add readme files where missing
  [2.8] update readme files for new components
  fix lowest TwigBridge deps versions
  reference form type by name on Symfony 2.7
  [EventDispatcher] fix syntax error
  Don't use reflections when possible
  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
  ...

Conflicts:
	UPGRADE-2.8.md
	UPGRADE-3.0.md
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/FragmentRendererPass.php
	src/Symfony/Component/Console/Helper/DialogHelper.php
	src/Symfony/Component/Console/Helper/ProgressHelper.php
	src/Symfony/Component/Console/Tests/Helper/LegacyDialogHelperTest.php
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/Security/Core/README.md
	src/Symfony/Component/Security/Csrf/README.md
	src/Symfony/Component/Security/Http/README.md
	src/Symfony/Component/Validator/Constraints/LocaleValidator.php
2016-03-10 11:34:12 +01:00
Nicolas Grekas
5500fe7104 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Fix transient test
  [HttpFoundation] Add a dependency on the mbstring polyfill
  [2.7] update readme files for new components
  add readme files where missing
  fix lowest TwigBridge deps versions
  [EventDispatcher] fix syntax error
  Don't use reflections when possible
  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
  [Process] Fix memory issue when using large input streams
  Use constant instead of function call.
  fixed test name
  automatically generate safe fallback filename
  [Console] default to stderr in the console helpers

Conflicts:
	composer.json
	src/Symfony/Bridge/PhpUnit/README.md
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Component/Console/Helper/DialogHelper.php
	src/Symfony/Component/Debug/DebugClassLoader.php
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/Security/Acl/README.md
	src/Symfony/Component/Security/Core/README.md
	src/Symfony/Component/Security/Csrf/README.md
	src/Symfony/Component/Security/Http/README.md
2016-03-07 15:04:32 +01: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
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
Ener-Getick
a46270a61a Don't use reflections when possible 2016-03-05 18:37:04 +01:00
Fabien Potencier
f5cf886500 Merge branch '3.0'
* 3.0:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  Improved the error message when using "@" in a decorated service
  Improve error reporting in router panel of web profiler
  [DoctrineBridge][Form] Fix performance regression in EntityType
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  minor [Form] fix tests added by #16886
  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:56:56 +01:00
Fabien Potencier
4a08c88755 Merge branch '2.8' into 3.0
* 2.8:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  Improved the error message when using "@" in a decorated service
  Improve error reporting in router panel of web profiler
  [DoctrineBridge][Form] Fix performance regression in EntityType
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  minor [Form] fix tests added by #16886
  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:55:57 +01:00
Fabien Potencier
0f3e1a3c34 Merge branch '2.7' into 2.8
* 2.7:
  Updated all the README files
  [TwigBundle] Fix failing test on appveyor
  Improved the error message when using "@" in a decorated service
  Improve error reporting in router panel of web profiler
  [DoctrineBridge][Form] Fix performance regression in EntityType
  [FrameworkBundle] Fix a regression in handling absolute and namespaced template paths
  Allow to normalize \Traversable
  minor [Form] fix tests added by #16886
  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:54:35 +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
Ener-Getick
97c5d27c59 Allow to normalize \Traversable 2016-03-02 21:42:54 +01:00
Fred Cox
a6788813fa Add a normalizer that support JsonSerializable objects
Handles circular references
2016-02-25 21:06:29 +02:00
Joel Wurtz
790fb6e760 Add normalizer / denormalizer awarness 2016-02-19 11:48:56 +01:00
Nicolas Grekas
6de5b403ec [Serializer] Add missing @requires annotations 2016-02-05 08:26:32 +01:00
Nicolas Grekas
443dc246ea [Serializer] Add missing TZ to tests 2016-02-04 15:07:44 +01:00
Nicolas Grekas
1bd125ec4a Merge branch '3.0'
* 3.0: (105 commits)
  [Console] remove readline support
  bumped Symfony version to 3.0.3
  updated VERSION for 3.0.2
  updated CHANGELOG for 3.0.2
  [Routing] added a suggestion to add the HttpFoundation component.
  [FrameworkBundle] fix assets and templating tests
  [ClassLoader] fix ApcClassLoader tests on HHVM
  [travis] Add some comments
  changed operator from and to &&
  [DependencyInjection] Remove unused parameter
  [Process] Fix transient tests for incremental outputs
  [Console] Add missing `@require` annotation in test
  Fix merge
  [appveyor] Fix failure reporting
  [#17634] move DebugBundle license file
  Limit Ldap component version for the 3.0 branch
  backport GlobTest from 2.7 branch
  Move licenses according to new best practices
  [FrameworkBundle] Remove unused code in test
  [2.3] Fixed an undefined variable in Glob::toRegex
  ...

Conflicts:
	.travis.yml
	composer.json
	src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/assets.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/assets.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/assets.yml
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_item.html.twig
	src/Symfony/Component/Console/CHANGELOG.md
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/PropertyInfo/Tests/PropertyInfoExtractorTest.php
	src/Symfony/Component/Yaml/Tests/ParserTest.php
2016-02-04 13:57:09 +01:00
Fabien Potencier
5b5970364e minor #17564 [Serializer] Use ::class in new tests (dunglas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Serializer] Use ::class in new tests

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

Commits
-------

48e8041 [Serializer] Use ::class in new tests
2016-01-27 16:30:34 +01:00
Kévin Dunglas
31696b7e98 Change few occurences of a public setUp() method to protected 2016-01-27 13:43:54 +01:00
Kévin Dunglas
48e8041611 [Serializer] Use ::class in new tests 2016-01-27 12:24:42 +01:00
Fabien Potencier
893fecbe69 Merge branch '2.8' into 3.0
* 2.8:
  [WebProfilerBundle] Don't inherit CSS text-transform property for the toolbar.
  Remove duplicate cursor property
  Increase the inlining YAML level for config:debug
  [Serializer] Minor: fix CS and PHPDoc
  [Form] fix tests
  [Serializer] Ensure that groups are strings
  [Debug] Tell that the extension is for PHP 5 only
  Static code analysis
  Update AnnotationDirectoryLoader.php
  added a test
  Escape the delimiter in Glob::toRegex
  [FrameworkBundle] Fix template location for PHP templates
  [FrameworkBundle] Add path verification to the template parsing test cases
2016-01-27 06:14:46 +01:00
Fabien Potencier
6704f62b4d Merge branch '2.7' into 2.8
* 2.7:
  Increase the inlining YAML level for config:debug
  [Serializer] Minor: fix CS and PHPDoc
  [Form] fix tests
  [Serializer] Ensure that groups are strings
  [Debug] Tell that the extension is for PHP 5 only
  Static code analysis
  Update AnnotationDirectoryLoader.php
  added a test
  Escape the delimiter in Glob::toRegex
  [FrameworkBundle] Fix template location for PHP templates
  [FrameworkBundle] Add path verification to the template parsing test cases
2016-01-27 06:14:19 +01:00
Fabien Potencier
1876b4f1c8 Merge branch '2.3' into 2.7
* 2.3:
  Static code analysis
  Update AnnotationDirectoryLoader.php
  [FrameworkBundle] Fix template location for PHP templates
  [FrameworkBundle] Add path verification to the template parsing test cases
2016-01-27 06:09:39 +01:00
Fabien Potencier
cb16bffb28 feature #17446 [Serializer] Add PSR-6 adapter (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #17446).

Discussion
----------

[Serializer] Add PSR-6 adapter

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

- [x] Add tests

Commits
-------

4bf9d05 [Serializer] Add PSR-6 adapter
2016-01-27 05:42:02 +01:00
Kévin Dunglas
4bf9d05237 [Serializer] Add PSR-6 adapter 2016-01-27 05:42:01 +01:00
Fabien Potencier
420989f5a9 feature #17113 [Serializer] Add a MaxDepth option (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #17113).

Discussion
----------

[Serializer] Add a MaxDepth option

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/14924#issuecomment-111977173, https://github.com/dunglas/DunglasApiBundle/issues/104#issuecomment-110644569
| License       | MIT
| Doc PR        | todo

Add a max depth option during the normalization process. Especially useful when normalizing trees.

Usage:

```php
use Symfony\Component\Serializer\Annotation\MaxDepth;

class MyObj
{
    /**
     * @MaxDepth(2)
     */
    public $foo;

    /**
     * @var self
     */
    public $child;
}

use Doctrine\Common\Annotations\AnnotationReader;
use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;
use Symfony\Component\Serializer\Serializer;
use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;

$classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
$normalizer = new ObjectNormalizer($classMetadataFactory);
$serializer = new Serializer(array($this->normalizer));

$level1 = new MyObj();
$level1->foo = 'level1';

$level2 = new MyObj();
$level2->foo = 'level2';
$level1->child = $level2;

$level3 = new MyObj();
$level3->foo = 'level3';
$level2->child = $level3;
$result = $serializer->normalize($level1, null, array(ObjectNormalizer::ENABLE_MAX_DEPTH => true));
/*      $result = array(
            'foo' => 'level1',
            'child' => array(
                    'foo' => 'level2',
                    'child' => array(
                            'child' => null,
                        ),
                ),
        );
*/
```

* [x] Metadata support
* [x] `@MaxDepth(2)` annotation and loader
* [x] XML loader
* [x] YAML loader
* [x] Delegate recursive normalization at the end of the process
* [x] Use constants with Late Static Binding in the abstract class instead of raw strings
* [x] Move common logic to the abstract class

/cc @mRoca @csarrazi

Commits
-------

a44bead [Serializer] Add a MaxDepth option
2016-01-26 13:18:18 +01:00
Kévin Dunglas
a44beade1e [Serializer] Add a MaxDepth option 2016-01-26 13:18:08 +01:00
Konstantin.Myakshin
8db691ab94 Static code analysis 2016-01-25 19:00:36 +02:00
Fabien Potencier
acfa9abfdc feature #16164 [Serializer] Add a data: URI normalizer (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #16164).

Discussion
----------

[Serializer] Add a data: URI normalizer

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

A new normalizer to transform `\SplFileInfo`, `\SplFileObject` and `\Symfony\Component\HttpFoundation\File\File` to [`data:` URI](https://en.wikipedia.org/wiki/Data_URI_scheme) and the opposite.

It's convenient when dealing with the JavaScript `FileReader` API.

Usage:

```php
$normalizer = new DataUriNormalizer();
echo $normalizer->normalize(new File(__DIR__.'/test.gif'));
// data:image/gif;base64,R0lGODdhAQABAIAAAP///////ywAAAAAAQABAAACAkQBADs=

echo $normalizer->normalize(new File(__DIR__.'/test.txt'));
// data:text/plain,K%C3%A9vin%20Dunglas%0A

var_dump($normalizer->denormalize('data:image/gif;base64,R0lGODdhAQABAIAAAP///////ywAAAAAAQABAAACAkQBADs=', 'SplFileObject');
// a SplFileObject (also supports HttpFoundation file if the composant is installed)
```
cc @clementtalleu

Commits
-------

cc7b5af [Serializer] Add a data: URI normalizer
2016-01-25 15:33:51 +01:00
Kévin Dunglas
cc7b5af170 [Serializer] Add a data: URI normalizer 2016-01-25 15:33:44 +01:00
Kévin Dunglas
ed2cdfa827 feature #17411 [Serializer] Add a new DateTime normalizer (dunglas)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[Serializer] Add a new DateTime normalizer

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

This PR add support for dates and times to the Normalizer component. It supports all date and time formats supported by PHP. Dates and times are normalized in the RFC 3339 format by default. The output format can be customized using the `$context` parameter. The default format can be changed using a constructor parameter.

Usage:

```php
use Symfony\Component\Serializer\Normalizer\DateTimeNormalizer;
use Symfony\Component\Serializer\Serializer;

$serializer = new Serializer(array(new DateTimeNormalizer()));

echo $serializer->normalize(new \DateTimeImmutable('2016/01/01'));
// 2016-01-01T00:00:00+00:00

echo $serializer->normalize(new \DateTime('2016/01/01'));
// 2016-01-01T00:00:00+00:00

echo $serializer->normalize(new \DateTime('2016/01/01'), null, array(DateTimeNormalizer::FORMAT_KEY => 'Y'))
// 2016

var_dump($serializer->denormalize('2016-01-01T00:00:00+00:00', \DateTimeInterface::class));
// class DateTimeImmutable#1 (3) {
//   public $date =>
//   string(26) "2016-01-01 00:00:00.000000"
//   public $timezone_type =>
//   int(1)
//   public $timezone =>
//   string(6) "+00:00"
// }

var_dump($serializer->denormalize('2016-01-01T00:00:00+00:00', \DateTime::class));
// class DateTime#1 (3) {
//   public $date =>
//   string(26) "2016-01-01 00:00:00.000000"
//   public $timezone_type =>
//   int(1)
//   public $timezone =>
//   string(6) "+00:00"
// }
```

Commits
-------

6749a70 [Serializer] Add a new DateTime normalizer
2016-01-22 08:40:56 +01:00
Kévin Dunglas
6749a70326 [Serializer] Add a new DateTime normalizer 2016-01-22 08:14:37 +01:00
Fabien Potencier
dba07f35c1 Merge branch '2.8' into 3.0
* 2.8:
  fixed CS
  fixed CS
  fixed test
  fixed CS
  Remove default match from AbstractConfigCommand::findExtension
  [FrameworkBundle][Validator] Fix apc cache service deprecation
2016-01-21 10:38:31 +01:00
Fabien Potencier
9188f0507d Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  fixed test
  fixed CS
  Remove default match from AbstractConfigCommand::findExtension
2016-01-21 10:05:51 +01:00
Fabien Potencier
06b958a17e fixed CS 2016-01-21 09:40:25 +01:00
Fabien Potencier
67df429d99 Merge branch '2.8' into 3.0
* 2.8: (48 commits)
  [Process] Use stream based storage to avoid memory issues
  Fix upgrade guides concerning erroneous removal of assets helper
  [Process] Remove a misleading comment
  Fix markdown typo
  ChooseBaseUrl should return an index
  [Form] ChoiceType: Fix a notice when 'choices' normalizer is replaced
  Improve the phpdoc of SplFileInfo methods
  [Process] Use stream based storage to avoid memory issues
  [FrameworkBundle] Don't log twice with the error handler
  synchronize 2.8 and 3.0 upgrade files
  Remove useless is_object condition
  [Process] Fix typo, no arguments needed anymore
  [Serializer] Introduce constants for context keys
  Fixed the documentation of VoterInterface::supportsAttribute
  Fixed Bootstrap form theme form "reset" buttons
  Fixed the form profiler when using long form types
  [PropertyInfo] PhpDocExtractor: Fix a notice when the property doesn't exist
  Remove useless duplicated tests
  [FrameworkBundle] Optimize framework extension tests
  synchronize 2.7 and 3.0 upgrade files
  ...
2016-01-20 13:18:23 +01:00
Fabien Potencier
fd50be95d9 Merge branch '2.7' into 2.8
* 2.7: (28 commits)
  [Process] Use stream based storage to avoid memory issues
  Fix upgrade guides concerning erroneous removal of assets helper
  [Process] Remove a misleading comment
  Fix markdown typo
  ChooseBaseUrl should return an index
  [Form] ChoiceType: Fix a notice when 'choices' normalizer is replaced
  Improve the phpdoc of SplFileInfo methods
  [Process] Use stream based storage to avoid memory issues
  [FrameworkBundle] Don't log twice with the error handler
  Remove useless is_object condition
  [Process] Fix typo, no arguments needed anymore
  [Serializer] Introduce constants for context keys
  Fixed the documentation of VoterInterface::supportsAttribute
  Fixed Bootstrap form theme form "reset" buttons
  Remove useless duplicated tests
  [FrameworkBundle] Optimize framework extension tests
  synchronize 2.7 and 3.0 upgrade files
  fix merge 2.3 into 2.7 for SecureRandom dependency
  Use is_subclass_of instead of reflection
  Use is_subclass_of instead of Reflection when possible
  ...
2016-01-20 13:09:07 +01:00
Kévin Dunglas
c56c7bf869 [Serializer] Introduce constants for context keys 2016-01-18 17:42:55 +01:00
Nicolas Grekas
f5db5397a0 Merge branch '2.8' into 3.0
* 2.8:
  [Yaml] Fix tests on PHP 7.0.2
  [FrameworkBundle] Don't log twice with the error handler
  [2.7] Workaround https://bugs.php.net/63206
  [2.3] Workaround https://bugs.php.net/63206
  Add closing parenthesis
  [Serializer] Unset object_to_populate after using it
  [Serializer] Allow to use proxies in object_to_populate

Conflicts:
	src/Symfony/Component/Debug/ErrorHandler.php
	src/Symfony/Component/HttpFoundation/JsonResponse.php
2016-01-13 11:30:06 +01:00
Nicolas Grekas
26979ed6ca Merge branch '2.7' into 2.8
* 2.7:
  [Yaml] Fix tests on PHP 7.0.2
  [2.7] Workaround https://bugs.php.net/63206
  [2.3] Workaround https://bugs.php.net/63206
  Add closing parenthesis
  [Serializer] Unset object_to_populate after using it
  [Serializer] Allow to use proxies in object_to_populate
2016-01-13 11:28:07 +01:00
Kévin Dunglas
eac37cd4ae bug #17328 [Serializer] Allow to use proxies in object_to_populate (dunglas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Serializer] Allow to use proxies in object_to_populate

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

Allows to populate a proxy (or any class having the given type).

Commits
-------

b16b5b9 [Serializer] Allow to use proxies in object_to_populate
2016-01-13 11:07:31 +01:00
Fabien Potencier
a5c0b8f8b9 Merge branch '2.8' into 3.0
* 2.8:
  Typo fix
  [WebProfiler] Fixed sf-minitoolbar height
  [2.3] Static Code Analysis for Components
  [Serializer] Use $context['cache_key'] to enhance caching
  Fixed erroneous deprecation notice for extended Interfaces
  [Routing] cs fix
  Added support \IteratorAggregate for UniqueEntityValidator
  Update AbstractChoiceListTest.php
  Fix #17306 Paths with % in it are note allowed (like urlencoded)
  Use proper class to fetch $versionStrategy property
  Added sort order SORT_STRING for params in UriSigner
  Remove normalizer cache in Serializer class
  [Serializer] ObjectNormalizer: context can contain not serializable data
2016-01-12 18:46:41 +01:00
Fabien Potencier
4ed54a39ab Merge branch '2.7' into 2.8
* 2.7:
  Typo fix
  [2.3] Static Code Analysis for Components
  Added support \IteratorAggregate for UniqueEntityValidator
  Update AbstractChoiceListTest.php
  Fix #17306 Paths with % in it are note allowed (like urlencoded)
  Use proper class to fetch $versionStrategy property
  Added sort order SORT_STRING for params in UriSigner
  Remove normalizer cache in Serializer class
2016-01-12 18:46:01 +01:00
Fabien Potencier
da655a9368 Merge branch '2.3' into 2.7
* 2.3:
  Typo fix
  [2.3] Static Code Analysis for Components
  Added support \IteratorAggregate for UniqueEntityValidator
  Fix #17306 Paths with % in it are note allowed (like urlencoded)
  Added sort order SORT_STRING for params in UriSigner
  Remove normalizer cache in Serializer class
2016-01-12 18:44:11 +01:00
Kévin Dunglas
b16b5b9d86 [Serializer] Allow to use proxies in object_to_populate 2016-01-11 10:59:43 +01:00
Jérôme Vasseur
8566dc18fc Remove normalizer cache in Serializer class 2016-01-03 18:07:57 +01:00
Kévin Dunglas
c1740fcc82 [Serializer] ObjectNormalizer: context can contain not serializable data 2015-12-31 11:23:14 +01:00
Nicolas Grekas
c1bfa46feb Merge branch '2.8' into 3.0
* 2.8:
  [Process] Enhance compatiblity with --enable-sigchild
  [Validator] removes unused variable in LengthValidator class.
  [FrameworkBundle] [Bug] Fixes new InputStyle bug #16920
  fix short array syntax for php 5.3
  [Serializer] Fixed  on array of objects in .
  [Process] Always call proc_close
  [Form] Add missing tests for StringUtil::fqcnToBlockPrefix()
  [Security] Fix a Polyfill import statement in StringUtils
  [Validator] Updated Luxembourgish translations for 2.8
  Improved the code of the commands that use the new SymfonyStyle class
  disable server commands without Process component
  list all server command names in suggestion
  Suggested Process dependency
  disable server:run cmd without Process component
  Suggested Process dependency
  [FrameworkBundle] prevent cache:clear creating too long paths
  [FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command

Conflicts:
	.travis.yml
	src/Symfony/Bridge/Twig/Command/LintCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/ConfigDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/RouterApacheDumperCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/RouterDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/YamlLintCommand.php
	src/Symfony/Bundle/TwigBundle/Command/DebugCommand.php
	src/Symfony/Component/Security/Core/Util/StringUtils.php
2015-12-10 18:31:09 +01:00
Nicolas Grekas
829c011b49 Merge branch '2.7' into 2.8
* 2.7:
  [Process] Enhance compatiblity with --enable-sigchild
  fix short array syntax for php 5.3
  [Serializer] Fixed  on array of objects in .
  [Process] Always call proc_close
  [Validator] Updated Luxembourgish translations for 2.8
  disable server commands without Process component
  list all server command names in suggestion
  Suggested Process dependency
  disable server:run cmd without Process component
  Suggested Process dependency
  [FrameworkBundle] prevent cache:clear creating too long paths
  [FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command

Conflicts:
	.travis.yml
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationUpdateCommand.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
2015-12-10 18:11:25 +01:00
Evgeniy Sokolov
70afcc8023 fix short array syntax for php 5.3 2015-12-09 12:45:47 +01:00
Konstantin Simon Maria Möllers
6110bd9c60 [Serializer] Fixed on array of objects in . 2015-12-08 21:34:12 +01:00
Christophe Coevoet
d553264958 Merge branch '2.8' into 3.0
* 2.8:
  [Process] Fix stopping a process on Windows
  [PhpUnitBridge] Add weak-verbose mode and match against message instead of test name
  Added a note about the new requirement iconv.
  Improved error messages for Yaml Deprecations
  Added a test case for the Logger class.
  [Form] Fix choices defined as Traversable
  CS: general fixes
  Suggested Process dependency
2015-12-05 18:45:07 +01:00
Christophe Coevoet
dbb0ba8f11 Merge branch '2.7' into 2.8
* 2.7:
  [Process] Fix stopping a process on Windows
  Added a test case for the Logger class.
  CS: general fixes
2015-12-05 18:37:59 +01:00
Christophe Coevoet
237b13c56c Merge branch '2.3' into 2.7
* 2.3:
  [Process] Fix stopping a process on Windows
  Added a test case for the Logger class.
  CS: general fixes
2015-12-05 18:37:09 +01:00
Dariusz Ruminski
d3f671e8f6 CS: general fixes 2015-12-01 23:08:33 +01:00
Fabien Potencier
7ba5f7acb3 Merge branch '2.8'
* 2.8:
  [HttpKernel] clearstatcache() so the Cache sees when a .lck file has been released
  [WIP] [Form] [TwigBridge] Bootstrap horizontal theme missing tests
  [Serializer] Improve ObjectNormalizer performance
  AssetBundle - fix docs
  [Yaml] more fixes to changelog and upgrade files
  CS: remove impossible default argument value
2015-11-28 12:03:53 +01:00
Kévin Dunglas
683f0f7315 [Serializer] Improve ObjectNormalizer performance 2015-11-28 11:40:16 +01:00
Nicolas Grekas
4d2ea16b90 Merge branch '2.8'
* 2.8:
  Add Spanish translation for BIC validator
  Added translation for BIC validator
  Sent out a status text for unknown HTTP headers.
  [DependencyInjection] Unescape parameters for all types of injection
  [Process] Fix trailing space in PHP binary finder
  Remove tmp addition of zend-stdlib
  [WebProfilerBundle] Fix minitoolbar height
  [Form] Fix ResolvedFormType deprecation notices
  [Serializer] add missing unit tests related to Encoder
  add it back

Conflicts:
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Component/Form/ResolvedFormType.php
2015-11-20 18:45:52 +01:00
Fabien Potencier
b6857ba405 minor #16557 [Serializer] add missing unit tests related to Encoder (FlorianLB)
This PR was merged into the 2.8 branch.

Discussion
----------

[Serializer] add missing unit tests related to Encoder

Add some missing unit tests on the Serializer component.

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

Commits
-------

7418d29 [Serializer] add missing unit tests related to Encoder
2015-11-20 07:33:45 +01:00
Nicolas Grekas
2abbb8a451 Merge branch '2.8'
* 2.8:
  Fix undefined array $server
  Fix call to undefined function json_last_error_message
  Fix bug in windows detection
  [ProxyManager] Tmp fix composer reqs issue in ZF
  Fix PropertyInfo extractor namespace in framework bundle
  Add missing exclusions from phpunit.xml.dist
  [Serializer] ObjectNormalizer: don't serialize static methods and props
  [Form] Enhance some FormRegistry deprecation messages
  [Validator] [sl] BIC (SWIFT-BIC) validation constraint
  [WebProfilerBundle] correct typo in show stack trace link
  bumped Symfony version to 2.8.0
  updated VERSION for 2.8.0-BETA1
  updated CHANGELOG for 2.8.0-BETA1
  Fix the server variables in the router_*.php files
  [Validator] Allow an empty path with a non empty fragment or a query
  The following change adds support for Armenian pluralization.
  [2.3][Process] fix Proccess run with pts enabled

Conflicts:
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/FormPass.php
	src/Symfony/Component/Form/FormRegistry.php
2015-11-18 14:48:51 +01:00
Nicolas Grekas
ecdd681898 Merge branch '2.7' into 2.8
* 2.7:
  Fix undefined array $server
  Fix bug in windows detection
  [ProxyManager] Tmp fix composer reqs issue in ZF
  Add missing exclusions from phpunit.xml.dist
  [Serializer] ObjectNormalizer: don't serialize static methods and props
  Fix the server variables in the router_*.php files
  [Validator] Allow an empty path with a non empty fragment or a query
  The following change adds support for Armenian pluralization.
  [2.3][Process] fix Proccess run with pts enabled

Conflicts:
	composer.json
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Component/Security/phpunit.xml.dist
2015-11-18 14:45:00 +01:00
FlorianLB
7418d29ae9 [Serializer] add missing unit tests related to Encoder 2015-11-18 11:51:45 +01:00
Daniel Wehner
15f9cf2740 Fix call to undefined function json_last_error_message 2015-11-18 11:05:38 +01:00
Kévin Dunglas
1fab27b58c [Serializer] ObjectNormalizer: don't serialize static methods and props 2015-11-17 20:34:27 +01:00
Nicolas Grekas
d33879a9db Merge branch '2.8'
* 2.8:
  [ci] Phpunit tests wont run if composer is installed in a wrapper
  [ci] Add version tag in phpunit wrapper to trigger cache-reset on demand
  fix race condition at mkdir (#16258)
  [VarDumper] Fix PHP7 type-hints compat
  [Bridge] [PhpUnit] fixes documentation markup.
  [PropertyAccess] Port of the performance optimization from 2.3
  trigger deprecation warning when using empty_value
  [PropertyAccess] Test access to dynamic properties
  [PropertyAccess] Fix dynamic property accessing.
  [Serializer] GetSetNormalizer shouldn't set/get static methods
  [Serializer] PropertyNormalizer shouldn't set static properties
  JsonDescriptor - encode container params only once

Conflicts:
	src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
	src/Symfony/Component/Form/Extension/Core/Type/DateType.php
	src/Symfony/Component/Form/Extension/Core/Type/TimeType.php
	src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
2015-11-09 13:52:14 +01:00
Nicolas Grekas
d86a3f3172 Merge branch '2.7' into 2.8
* 2.7:
  [ci] Phpunit tests wont run if composer is installed in a wrapper
  [ci] Add version tag in phpunit wrapper to trigger cache-reset on demand
  fix race condition at mkdir (#16258)
  [VarDumper] Fix PHP7 type-hints compat
  [Bridge] [PhpUnit] fixes documentation markup.
  [PropertyAccess] Port of the performance optimization from 2.3
  trigger deprecation warning when using empty_value
  [PropertyAccess] Test access to dynamic properties
  [PropertyAccess] Fix dynamic property accessing.
  [Serializer] GetSetNormalizer shouldn't set/get static methods
  [Serializer] PropertyNormalizer shouldn't set static properties
  JsonDescriptor - encode container params only once

Conflicts:
	src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
2015-11-09 13:46:59 +01:00
Fabien Potencier
1bed1772f6 bug #16454 [Serializer] GetSetNormalizer shouldn't set/get static methods (boekkooi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Serializer] GetSetNormalizer shouldn't set/get static methods

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

This PR fixes setting static getters and setters when serializing.
This is strictly speaking a BC break but in my opinion a needed one because the current behavior is unexpected.

Commits
-------

d8d4405 [Serializer] GetSetNormalizer shouldn't set/get static methods
2015-11-05 14:03:56 +01:00
Warnar Boekkooi
d8d4405e50 [Serializer] GetSetNormalizer shouldn't set/get static methods 2015-11-04 15:11:04 +08:00
Warnar Boekkooi
b15bdca96d [Serializer] PropertyNormalizer shouldn't set static properties 2015-11-04 15:01:32 +08:00
Nicolas Grekas
3ecf2062b8 Merge branch '2.7' into 2.8
* 2.7:
  [tests] Use @requires annotation when possible
  [tests] Use @requires annotation when possible
  [ci] Enable collecting and replaying skipped tests
  [Process] Workaround buggy PHP warning
  [Console] Add additional ways to detect OS400 platform
  [Yaml] Allow tabs before comments at the end of a line
  Added more tests for PropertyAccess

Conflicts:
	.travis.yml
	src/Symfony/Bridge/Doctrine/composer.json
	src/Symfony/Bridge/Monolog/composer.json
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Bridge/Swiftmailer/composer.json
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/DebugBundle/composer.json
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Bundle/TwigBundle/composer.json
	src/Symfony/Bundle/WebProfilerBundle/composer.json
	src/Symfony/Component/Asset/composer.json
	src/Symfony/Component/BrowserKit/composer.json
	src/Symfony/Component/ClassLoader/composer.json
	src/Symfony/Component/Config/composer.json
	src/Symfony/Component/Console/composer.json
	src/Symfony/Component/CssSelector/composer.json
	src/Symfony/Component/Debug/composer.json
	src/Symfony/Component/DependencyInjection/composer.json
	src/Symfony/Component/DomCrawler/composer.json
	src/Symfony/Component/EventDispatcher/composer.json
	src/Symfony/Component/ExpressionLanguage/composer.json
	src/Symfony/Component/Filesystem/composer.json
	src/Symfony/Component/Finder/composer.json
	src/Symfony/Component/Form/composer.json
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Intl/composer.json
	src/Symfony/Component/Locale/composer.json
	src/Symfony/Component/OptionsResolver/composer.json
	src/Symfony/Component/Process/composer.json
	src/Symfony/Component/PropertyAccess/composer.json
	src/Symfony/Component/Routing/composer.json
	src/Symfony/Component/Security/Acl/composer.json
	src/Symfony/Component/Security/Core/composer.json
	src/Symfony/Component/Security/Csrf/composer.json
	src/Symfony/Component/Security/Http/composer.json
	src/Symfony/Component/Security/composer.json
	src/Symfony/Component/Serializer/composer.json
	src/Symfony/Component/Stopwatch/composer.json
	src/Symfony/Component/Templating/composer.json
	src/Symfony/Component/Translation/Tests/Dumper/IcuResFileDumperTest.php
	src/Symfony/Component/Translation/composer.json
	src/Symfony/Component/Validator/composer.json
	src/Symfony/Component/VarDumper/composer.json
	src/Symfony/Component/Yaml/composer.json
2015-10-10 11:36:22 +02:00
Nicolas Grekas
b028aeaa04 [tests] Use @requires annotation when possible 2015-10-10 11:00:45 +02:00
Fabien Potencier
8d7b498665 Merge branch '2.8'
* 2.8: (28 commits)
  Detect Mintty for color support on Windows
  Detect Mintty for color support on Windows
  [WebProfilerBundle] Fix search button click listener
  [Form][Type Date/Time] added choice_translation_domain option.
  Massively simplifying the BC and deprecated-throwing code thanks to suggestions by stof in #15870
  Making all "debug" messages use the debug router
  Making GuardTokenInterface extend TokenInterface
  Updating behavior to not continue after an authenticator has set the response
  Add a group for tests of the finder against the FTP server
  Fix trigger_error calls
  Fix legacy security tests
  tweaking message related to configuration edge case that we want to be helpful with
  Minor tweaks - lowering the required security-http requirement and nulling out a test field
  Fix license headers
  Fix license headers
  Fix license headers
  Ensure the ClockMock is loaded before using it in the testsuite
  Allow serializer 3.0 in the PropertyInfo component
  Add the replace rules for the security-guard component
  Forbid serializing a Crawler
  ...
2015-09-27 12:13:28 +02:00
Christophe Coevoet
e610b416c9 Merge branch '2.7' into 2.8
* 2.7:
  Fix license headers
  Ensure the ClockMock is loaded before using it in the testsuite
  Fix with_minutes option in time widget
  Fixed properties not explicitily declared
2015-09-26 21:48:07 +02:00
François-Xavier de Guillebon
d2b3fe4c72 Fixed properties not explicitily declared 2015-09-14 11:40:15 +02:00
Nicolas Grekas
922a534427 Merge branch '2.7' into 2.8
* 2.7:
  Mark deprecated Twig functions as deprecated with the Twig feature
  [appveyor] PHP 5.3.11 for Symfony 2.7
  [HttpKernel] Group deprecation notices

Conflicts:
	appveyor.yml
2015-09-01 09:33:03 +02:00
Nicolas Grekas
0f2256e85a [appveyor] PHP 5.3.11 for Symfony 2.7 2015-08-31 18:44:53 +02:00
Fabien Potencier
dcc80c7b8a Merge branch '2.8'
* 2.8:
  fixes CS
  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 09:21:16 +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
c0e4495b66 fixes CS 2015-08-24 09:13:45 +02:00
Fabien Potencier
3fb82b67c1 Merge branch '2.8'
* 2.8: (22 commits)
  [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
  [VarDumper] Add caster for pgsql resources
  [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
  Add support for target attributes.
  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.
  [FrameworkBundle] fix serializer config check
  [Debug] Enhance DebugClassLoader performance on MacOSX
  Add support for variadic arguments in the GetSetNormalizer
  ...
2015-08-22 09:44:28 +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
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
Christophe Coevoet
704760b276 Add support for variadic arguments in the GetSetNormalizer 2015-08-01 21:55:55 +02:00
Fabien Potencier
803144d1e0 Merge branch '2.8'
* 2.8:
  [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.
  [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)
  [Form] Fix not-BC test assertion
  [Security] Moved Simple{Form,Pre}AuthenticatorInterfaces to Security\Http
  [Security] removed useless else condition in SwitchUserListener class.
  [travis] Tests deps=low with PHP 5.6
  Implement resettable containers
  [Console] Fix console output with closed stdout
2015-07-26 11:09:51 +02: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
Kévin Dunglas
65e9f268fe [Serializer] Fix bugs reported in b5990be491 (commitcomment-12301266) 2015-07-22 21:42:44 +02:00
Fabien Potencier
924ac4007a Merge branch '2.8'
* 2.8:
  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:12:34 +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
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
Kévin Dunglas
2bd8fb8f97 [Serializer] Fix Groups tests. 2015-07-04 12:02:28 +02:00
Nicolas Grekas
7304ba185b Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Reuse PropertyAccessor service for ObjectNormalizer
  [VarDumper] Fix dump output for better readability
  [PhpUnitBridge] Enforce @-silencing of deprecation notices according to new policy
2015-06-19 17:09:14 +02:00
Nicolas Grekas
9eea9eb848 [PhpUnitBridge] Enforce @-silencing of deprecation notices according to new policy 2015-06-18 21:21:56 +02:00
Fabien Potencier
036c946172 Merge branch '2.8'
* 2.8: (100 commits)
  [DependencyInjection] provide better error message when using deprecated configuration options
  [console][TableCell] get cell width without decoration.
  Improve the config validation in TwigBundle
  [VarDumper] Changed tooltip to expand-all keybinding in OS X
  [Bridge\PhpUnit] Fix composer installed phpunit detection
  [VarDumper] Fix generic casters calling order
  [2.7][SecurityBundle] Remove SecurityContext from Compile
  [WebProfilerBundle][logger] added missing deprecation message.
  Fix profiler CSS
  [Security][Acl] enforce string identifiers
  [FrameworkBundle] make `templating.helper.router` service available again for BC reasons
  [BrowserKit] Fix bug when uri starts with http.
  bumped Symfony version to 2.7.1
  updated VERSION for 2.7.0
  updated CHANGELOG for 2.7.0
  bumped Symfony version to 2.6.10
  updated VERSION for 2.6.9
  updated CHANGELOG for 2.6.9
  fixed tests
  bumped Symfony version to 2.3.31
  ...

Conflicts:
	CHANGELOG-2.3.md
	CHANGELOG-2.6.md
	CHANGELOG-2.7.md
	UPGRADE-2.7.md
	UPGRADE-3.0.md
	src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php
	src/Symfony/Bridge/Twig/Extension/AssetExtension.php
	src/Symfony/Bridge/Twig/Tests/Extension/AssetExtensionTest.php
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Resources/config/templating.xml
	src/Symfony/Bundle/FrameworkBundle/Resources/config/templating_php.xml
	src/Symfony/Bundle/FrameworkBundle/Templating/Helper/CodeHelper.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Component/Debug/ExceptionHandler.php
	src/Symfony/Component/DependencyInjection/Container.php
	src/Symfony/Component/DependencyInjection/Definition.php
	src/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php
	src/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/legacy-services6.xml
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services6.xml
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/legacy-services6.yml
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services6.yml
	src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php
	src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
	src/Symfony/Component/Form/CHANGELOG.md
	src/Symfony/Component/HttpKernel/DependencyInjection/ContainerAwareHttpKernel.php
	src/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php
	src/Symfony/Component/Routing/Loader/XmlFileLoader.php
	src/Symfony/Component/Routing/Loader/YamlFileLoader.php
2015-06-04 22:30:47 +02:00
Fabien Potencier
5593bdd56e Merge branch '2.7' into 2.8
* 2.7: (95 commits)
  [DependencyInjection] provide better error message when using deprecated configuration options
  [console][TableCell] get cell width without decoration.
  Improve the config validation in TwigBundle
  [VarDumper] Changed tooltip to expand-all keybinding in OS X
  [Bridge\PhpUnit] Fix composer installed phpunit detection
  [VarDumper] Fix generic casters calling order
  [2.7][SecurityBundle] Remove SecurityContext from Compile
  [WebProfilerBundle][logger] added missing deprecation message.
  Fix profiler CSS
  [Security][Acl] enforce string identifiers
  [FrameworkBundle] make `templating.helper.router` service available again for BC reasons
  [BrowserKit] Fix bug when uri starts with http.
  bumped Symfony version to 2.7.1
  updated VERSION for 2.7.0
  updated CHANGELOG for 2.7.0
  bumped Symfony version to 2.6.10
  updated VERSION for 2.6.9
  updated CHANGELOG for 2.6.9
  fixed tests
  bumped Symfony version to 2.3.31
  ...

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/logger.html.twig
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Translation/Loader/JsonFileLoader.php
2015-06-04 22:21:09 +02:00
Alexander M. Turek
0573f28d9b Support for array denormalization. 2015-05-26 22:25:23 +02:00
Fabien Potencier
2aeaa22e31 bug #14745 [Serializer] AbstractNormalizer::instantiateObject allow default values when not optional (boekkooi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Serializer] AbstractNormalizer::instantiateObject allow default values when not optional

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

This PR fixes a bug in the AbstractNormalizer when denormalizing a array with a missing value but a default value set in the class constructor.

Commits
-------

266d53e [Serializer] AbstractNormalizer::instantiateObject allow default values when not optional
2015-05-25 09:45:54 +02:00
Warnar Boekkooi
d546080d20 [Serializer] AbstractNormalizer::instantiateObject avoid null rejection 2015-05-25 09:37:02 +02:00
Warnar Boekkooi
266d53e5e8 [Serializer] AbstractNormalizer::instantiateObject allow default values when not optional 2015-05-25 07:36:47 +08:00
Nicolas Grekas
b6aa47c41c Merge branch '2.8'
* 2.8: (77 commits)
  [travis] Use container-based infrastructure
  [HttpKernel] use ConfigCache::getPath() method when it exists
  [PropertyAccess] Fix setting public property on a class having a magic getter
  [Routing] Display file which contain deprecated option
  ContainerInterface: unused exception dropped
  bumped Symfony version to 2.6.8
  updated VERSION for 2.6.7
  updated CHANGELOG for 2.6.7
  bumped Symfony version to 2.3.29
  updated VERSION for 2.3.28
  update CONTRIBUTORS for 2.3.28
  updated CHANGELOG for 2.3.28
  [Debug] Fixed ClassNotFoundFatalErrorHandlerTest
  [SecurityBundle] use access decision constants in config
  [SecurityBundle] use session auth constants in config
  PhpDoc fix in AbstractRememberMeServices
  [FrameworkBundle][DX] Add option to specify additional translation loading paths
  [Filesystem] Simplified an if statement
  fixed CS
  [SecurityBundle] Use Enum Nodes Instead Of Scalar
  ...

Conflicts:
	CHANGELOG-2.3.md
	CHANGELOG-2.6.md
	src/Symfony/Bridge/Swiftmailer/composer.json
	src/Symfony/Bundle/DebugBundle/composer.json
	src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/full.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/event_dispatcher_1_event1.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/event_dispatcher_1_events.txt
	src/Symfony/Component/Debug/DebugClassLoader.php
	src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
	src/Symfony/Component/Form/README.md
	src/Symfony/Component/Intl/README.md
	src/Symfony/Component/Locale/composer.json
	src/Symfony/Component/Routing/Loader/XmlFileLoader.php
	src/Symfony/Component/Routing/Loader/YamlFileLoader.php
	src/Symfony/Component/Security/README.md
	src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
	src/Symfony/Component/Serializer/Tests/Normalizer/ObjectNormalizerTest.php
	src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
	src/Symfony/Component/Translation/README.md
	src/Symfony/Component/Validator/README.md
	src/Symfony/Component/Yaml/Yaml.php
2015-05-12 17:48:43 +02:00
Kévin Dunglas
c9bff461bc [Serializer] Ignore \Traversable in default normalizers. Close #14495. 2015-05-04 09:31:19 +02:00
Kévin Dunglas
454ef8cc6f [Serializer] Fix a bug when using groups together with a name converter 2015-04-27 14:05:43 +02:00
Diego Saint Esteben
e90e9b20b3 Removed deprecations in Serializer component 2015-04-27 09:24:13 +02:00
Kévin Dunglas
9c87eccf9f [Serializer] Supports hassers and setters for groups annotations 2015-04-02 22:29:07 +02:00
Fabien Potencier
6b02541880 Merge branch '2.6' into 2.7
* 2.6:
  Fix small coding style
  [2.3] Static Code Analysis for Components
  [Form] fixed phpdoc
  CS: Convert double quotes to single quotes
  Fixed MongoODM entity loader. Improved loading behavior of entities and documents by reusing entity loader.
  [Validator] added Japanese translation for unmatched charset (id: 80)
  [WebProfilerBundle] fixed undefined buttons.
  [WebProfilerBundle] Fix javascript toolbar on IE8
  [DependencyInjection] Highest precedence for user parameters
  bumped Symfony version to 2.6.6
  [Translation][MoFileLoader] fixed load empty translation.
  updated VERSION for 2.6.5
  updated CHANGELOG for 2.6.5
  bumped Symfony version to 2.3.27
  updated VERSION for 2.3.26
  update CONTRIBUTORS for 2.3.26
  updated CHANGELOG for 2.3.26
  [HttpKernel] UriSigner::buildUrl - default params for http_build_query

Conflicts:
	src/Symfony/Bridge/Propel1/Tests/DataCollector/PropelDataCollectorTest.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Security/Http/Firewall/AbstractPreAuthenticatedListener.php
	src/Symfony/Component/Validator/Resources/translations/validators.ja.xlf
2015-03-22 17:57:18 +01:00
Fabien Potencier
618b7dcfb8 Merge branch '2.3' into 2.6
* 2.3:
  Fix small coding style
  [2.3] Static Code Analysis for Components
  [Form] fixed phpdoc
  CS: Convert double quotes to single quotes
  Fixed MongoODM entity loader. Improved loading behavior of entities and documents by reusing entity loader.
  [Validator] added Japanese translation for unmatched charset (id: 80)
  [DependencyInjection] Highest precedence for user parameters
  [Translation][MoFileLoader] fixed load empty translation.
  bumped Symfony version to 2.3.27
  updated VERSION for 2.3.26
  update CONTRIBUTORS for 2.3.26
  updated CHANGELOG for 2.3.26

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/AssetsInstallCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
	src/Symfony/Bundle/TwigBundle/Command/LintCommand.php
	src/Symfony/Component/Config/Definition/ReferenceDumper.php
	src/Symfony/Component/Debug/ExceptionHandler.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
	src/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php
	src/Symfony/Component/Filesystem/Filesystem.php
	src/Symfony/Component/HttpKernel/DataCollector/DataCollector.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
	src/Symfony/Component/Translation/PluralizationRules.php
	src/Symfony/Component/Validator/Constraints/IssnValidator.php
	src/Symfony/Component/Validator/Resources/translations/validators.ja.xlf
	src/Symfony/Component/Yaml/Tests/InlineTest.php
2015-03-22 17:55:57 +01:00
Dariusz Ruminski
f99c22c08a CS: Convert double quotes to single quotes 2015-03-21 12:11:30 +01:00
Fabien Potencier
59ca5b3af9 Merge branch '2.6' into 2.7
* 2.6:
  Marked the ResolveParameterPlaceHoldersPassTest as legacy
  [ExpressionLanguage] fixed issues when parsing postfix expressions
  remove unused code
  do not inline service factories
  resolve class parameters in service factories
  [Serializer] Fix object normalization exceptions

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php
	src/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php
	src/Symfony/Component/Serializer/Normalizer/PropertyNormalizer.php
	src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
2015-03-17 13:50:07 +01:00
Kévin Dunglas
500df475a6 [Serializer] Fix object normalization exceptions 2015-03-16 00:12:13 +01:00
Nicolas Grekas
eb728c5e4c [2.7] add @group legacy 2015-03-13 18:50:01 +01:00
sarah khalil
a818ab2fb1 Changed visibility of setUp() and tearDown to protected 2015-03-13 10:59:53 +01:00
Kévin Dunglas
0050bbb345 [Serializer] Introduce ObjectNormalizer 2015-03-06 11:52:53 +01:00
Kévin Dunglas
8534505db5 [Serializer] Refactoring of metadata 2015-03-06 11:33:18 +01:00
Kévin Dunglas
df0fe30896 [Serializer] Test that normalizers ignore non-existing attributes. 2015-03-03 09:32:43 +01:00
Nicolas Grekas
acac734d08 [PhpUnitBridge] new bridge for testing with PHPUnit 2015-02-18 11:38:04 +01:00
Fabien Potencier
7af0196d89 feature #13500 [Serializer] Normalizers can serialize collections and scalars (dunglas)
This PR was squashed before being merged into the 2.7 branch (closes #13500).

Discussion
----------

[Serializer] Normalizers can serialize collections and scalars

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

Currently, the logic for serializing `array` and scalars is hardcoded in the serializer. This is not possible to have a custom serializer normalizing collections. This a big limitation, for instance it's not possible to create an normalizer creating [Hydra collections](http://www.hydra-cg.com/spec/latest/core/#h-collections) for a PHP array.

This PR fix that.

Commits
-------

1cf8eb2 [Serializer] Normalizers can serialize collections and scalars
2015-02-11 11:46:00 +01:00
Kévin Dunglas
1cf8eb2d85 [Serializer] Normalizers can serialize collections and scalars 2015-02-11 11:45:57 +01:00
Kévin Dunglas
8135843b70 [Serializer] Silent deprecation notice 2015-02-04 21:45:48 +01:00
Fabien Potencier
54e07c95dc minor #13580 [Serializer] Use autoloader for annotations in tests (dunglas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Serializer] Use autoloader for annotations in tests

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

Commits
-------

75e2ebf [Serializer] Use autoloader for annotations in tests
2015-02-04 13:46:41 +01:00
Kévin Dunglas
8ddc888f00 [Serializer] Use Serializer's LogicException when applicable 2015-02-03 23:38:39 +01:00
Kévin Dunglas
75e2ebfa30 [Serializer] Use autoloader for annotations in tests 2015-02-03 23:16:32 +01:00
Kévin Dunglas
e14854fe22 [Serializer] Name converter support 2015-01-25 20:53:10 +01:00
Fabien Potencier
37601dda2c feature #13252 [Serializer] Refactoring and object_to_populate support. (dunglas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Serializer] Refactoring and object_to_populate support.

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

This PR is mainly a refactoring. It move up the common code of `PorpertyNormalizer` and `GetSetMethodNormalizer` into `AbstractNormalizer`.

It also adds a news feature: the ability to use an existing object instance for denormalization:

```php
$dummy = new GetSetDummy();
$dummy->setFoo('foo');

$obj = $this->normalizer->denormalize(
    array('bar' => 'bar'),
    'GetSetDummy',
     null,
     array('object_to_populate' => $dummy)
);

// $obj and $dummy are references to the same object
```

Commits
-------

b5990be [Serializer] Refactoring and object_to_populate support.
2015-01-07 09:02:39 +01:00
Kévin Dunglas
fbc933596b [Serializer] Add circular reference handling to the PropertyNormalizer 2015-01-04 21:41:58 +01:00
Kévin Dunglas
b5990be491 [Serializer] Refactoring and object_to_populate support. 2015-01-04 21:11:42 +01:00
Kévin Dunglas
efd39cfa51 [Serializer] Fix XmlFileLoader test 2014-12-25 05:07:44 +01:00
Kévin Dunglas
57a191b3a9 [Serializer] Serialization groups support 2014-12-21 23:11:52 +01:00
Kévin Dunglas
37d3f84f1c [Serializer] Add xml_format_output context option. Close #12517. 2014-12-18 19:26:29 +01:00
Fabien Potencier
23eafccd4a Merge branch '2.5' into 2.6
* 2.5:
  Added information when an error occured during validation of an answer of a question
  [Console] fixes some typos and phpdoc.
  fix phpdoc's alignment
  Minor phpcs fixes
  [ClassLoader] Fix undefined index in ClassCollectionLoader
2014-12-08 09:43:24 +01:00
Fabien Potencier
7bb6f4445c Merge branch '2.3' into 2.5
* 2.3:
  fix phpdoc's alignment
  Minor phpcs fixes
  [ClassLoader] Fix undefined index in ClassCollectionLoader

Conflicts:
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
2014-12-08 09:43:12 +01:00
Dariusz Rumiński
f588610722 fix phpdoc's alignment 2014-12-07 19:24:30 +01:00
Graham Campbell
2f10a0a704 [2.6] CS Fixes And Removed An Unused Import 2014-12-07 19:23:39 +01:00
Disquedur
ac1f2b76d6 Remove aligned '=>' and '=' 2014-11-04 15:29:39 +01:00
Fabien Potencier
4982984d31 Merge branch '2.5'
* 2.5:
  added missing files
  [TwigBundle] added a test
  Indicate which file was being parsed if an exception is thrown while running translation:debug
  [ClassLoader] Cast $useIncludePath property to boolean
  [HttpFoundation] Minor spelling fix in PHPDocs
  improve error message for multiple documents
  Remove aligned '=>' and '='
  [Session] remove invalid workaround in session regenerate
  [Kernel] ensure session is saved before sending response
  [Routing] serialize the compiled route to speed things up
  [Form] Fixed usage of "name" variable in form_start block
  [Validator] Fixed Regex::getHtmlPattern() to work with complex and negated patterns
  [DependencyInjection] use inheritdoc for loaders
  [Config] fix filelocator with empty name
  [Form] fix form handling with unconventional request methods like OPTIONS
  CSRF warning docs on Request::enableHttpMethodParameterOverride()

Conflicts:
	src/Symfony/Component/Console/Helper/ProgressBar.php
2014-11-03 04:55:50 +01:00
Disquedur
e638ccbe39 Remove aligned '=>' and '=' 2014-10-30 21:17:55 +01:00
Kévin Dunglas
48491c4441 [Serializer] Handle circular references 2014-10-09 19:55:06 +02:00
Fabien Potencier
cc04ce15c0 feature #9708 [Serializer] PropertyNormalizer: a new normalizer that maps an object's properties to an array (mnapoli)
This PR was merged into the 2.6-dev branch.

Discussion
----------

[Serializer] PropertyNormalizer: a new normalizer that maps an object's properties to an array

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        | if PR is deemed mergeable, I'll write the docs

This PR adds a new Normalizer for the Serializer component: **`PropertyNormalizer`**.

Currently the only normalizer is `GetSetMethodNormalizer`, which calls getters and setters. This new serializer uses the properties values directly.

This is especially useful if you write a webservice and take/return very simple DTO (Data Transfer Objects) which role is only to act like a "named" `stdClass`. Every property is public (the class doesn't contain any logic), and mapping that to an array is pretty easy.

This normalizer takes into account public, but also *private* and *protected* properties.

FYI I've based most of the code of `GetSetMethodNormalizer`.

Commits
-------

78ceed1 [Serializer] Added PropertyNormalizer, a new normalizer that maps an object's properties to an array
2014-09-24 16:31:38 +02:00
Fabien Potencier
05815adb22 Merge branch '2.5'
* 2.5:
  added missing use statements
  added missing use statement
  added missing use statement
  fixed CS
  [Process] fixed some volatile tests
  [HttpKernel] fixed a volatile test
  [HttpFoundation] fixed some volatile tests
  [Tests] PHPUnit Optimizations
  Use getPathname() instead of string casting to get BinaryFileReponse file path

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
	src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/Fixtures/php/full.php
	src/Symfony/Component/Debug/Tests/Exception/FlattenExceptionTest.php
	src/Symfony/Component/HttpFoundation/Tests/BinaryFileResponseTest.php
	src/Symfony/Component/Process/Process.php
	src/Symfony/Component/Stopwatch/Stopwatch.php
	src/Symfony/Component/Validator/Constraints/AbstractComparisonValidator.php
	src/Symfony/Component/Validator/Tests/Constraints/GreaterThanOrEqualValidatorTest.php
	src/Symfony/Component/Yaml/Parser.php
	src/Symfony/Component/Yaml/Tests/InlineTest.php
2014-09-22 13:59:59 +02:00
Fabien Potencier
b91866f6c1 Merge branch '2.4' into 2.5
* 2.4:
  fixed CS
  [Process] fixed some volatile tests
  [HttpKernel] fixed a volatile test
  [HttpFoundation] fixed some volatile tests
  [Tests] PHPUnit Optimizations
  Use getPathname() instead of string casting to get BinaryFileReponse file path

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/full.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Functional/Bundle/TestBundle/Controller/SessionController.php
	src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php
	src/Symfony/Component/Console/Formatter/OutputFormatterStyle.php
	src/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
	src/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php
	src/Symfony/Component/HttpKernel/Tests/DataCollector/RequestDataCollectorTest.php
	src/Symfony/Component/HttpKernel/Tests/Debug/TraceableEventDispatcherTest.php
	src/Symfony/Component/Process/Tests/AbstractProcessTest.php
	src/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php
	src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php
	src/Symfony/Component/Security/Acl/Dbal/MutableAclProvider.php
	src/Symfony/Component/Security/Core/Authentication/Provider/PreAuthenticatedAuthenticationProvider.php
	src/Symfony/Component/Security/Http/Tests/Firewall/SwitchUserListenerTest.php
	src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
	src/Symfony/Component/Translation/Tests/Dumper/IcuResFileDumperTest.php
	src/Symfony/Component/Validator/Constraints/ChoiceValidator.php
	src/Symfony/Component/Validator/Constraints/CollectionValidator.php
	src/Symfony/Component/Validator/Tests/Constraints/AbstractConstraintValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/IsbnValidatorTest.php
	src/Symfony/Component/Validator/Tests/ValidationVisitorTest.php
	src/Symfony/Component/Yaml/Parser.php
2014-09-22 11:14:18 +02:00
Fabien Potencier
27e8c654db Merge branch '2.3' into 2.4
* 2.3:
  fixed CS
  [Process] fixed some volatile tests
  [HttpKernel] fixed a volatile test
  [HttpFoundation] fixed some volatile tests
  Use getPathname() instead of string casting to get BinaryFileReponse file path

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpReferenceCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/EventListener/SessionListener.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
	src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php
	src/Symfony/Component/Config/Definition/ReferenceDumper.php
	src/Symfony/Component/Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php
	src/Symfony/Component/Console/Application.php
	src/Symfony/Component/Console/Tests/ApplicationTest.php
	src/Symfony/Component/Filesystem/Exception/IOException.php
	src/Symfony/Component/Form/Extension/Templating/TemplatingExtension.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/NumberToLocalizedStringTransformerTest.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
	src/Symfony/Component/HttpKernel/Tests/Bundle/BundleTest.php
	src/Symfony/Component/HttpKernel/Tests/Fragment/RoutableFragmentRendererTest.php
	src/Symfony/Component/HttpKernel/Tests/Profiler/Mock/RedisMock.php
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorCollectionTest.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
	src/Symfony/Component/Routing/Matcher/Dumper/ApacheMatcherDumper.php
	src/Symfony/Component/Routing/Tests/Annotation/RouteTest.php
	src/Symfony/Component/Routing/Tests/Loader/AnnotationClassLoaderTest.php
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
	src/Symfony/Component/Validator/Constraints/CollectionValidator.php
	src/Symfony/Component/Validator/Tests/ExecutionContextTest.php
2014-09-22 10:51:05 +02:00
Fabien Potencier
369aebf431 fixed CS 2014-09-22 10:32:35 +02:00
Bernhard Schussek
27a2280d29 Merge branch '2.5'
* 2.5: (33 commits)
  [Validator] Added Swedish translations
  [Validator] Fixed ExpressionValidator when the validation root is not an object
  [Validator] Fixed: Made it possible (again) to pass a class name to Validator::validatePropertyValue()
  Fix incorrect romanian plural translations
  fix axes handling in Crawler::filterXPath()
  fix some docblocks
  Fixed self-reference in 'service_container' service breaks garbage collection (and clone).
  [Process] Fix tests when pcntl is not available.
  [DependencyInjection] Roll back changes made to generated files.
  [Console] Roll back changes made to fixture files.
  Issue #11489 Added some CA and ES translations
  [Validator] Added more detailed inline documentation
  [Validator] Removed information from the violation output if the value is an array, object or resource
  partially reverted previous commit
  fixed CS
  Add point about ConsoleLogger to Console 2.5 changelog
  [Validator] Fixed failing tests
  [Validator] CS fixes
  [FrameworkBundle] Made ConstraintValidatorFactory aware of the legacy validators
  [Validator] Added extensive test coverage for the constraint validators for the different APIs
  ...

Conflicts:
	src/Symfony/Component/Validator/Resources/translations/validators.ca.xlf
2014-08-05 11:07:51 +02:00
Bernhard Schussek
98c0621d21 Merge branch '2.4' into 2.5
* 2.4: (24 commits)
  [Validator] Added Swedish translations
  Fix incorrect romanian plural translations
  fix axes handling in Crawler::filterXPath()
  fix some docblocks
  Fixed self-reference in 'service_container' service breaks garbage collection (and clone).
  [Process] Fix tests when pcntl is not available.
  [DependencyInjection] Roll back changes made to generated files.
  [Console] Roll back changes made to fixture files.
  Issue #11489 Added some CA and ES translations
  [Validator] Added more detailed inline documentation
  [Validator] Removed information from the violation output if the value is an array, object or resource
  partially reverted previous commit
  fixed CS
  properly handle null data when denormalizing
  [Validator] Renamed valueToString() to formatValue(); added missing formatValue() calls
  [Validator] Fixed CS
  [Validator] Fixed date-to-string conversion tests to match ICU 51
  [Validator] Added "{{ value }}" parameters where they were missing
  [Validator] Simplified and explained the LuhnValidator
  [Validator] Simplified IssnValidator
  ...

Conflicts:
	src/Symfony/Bridge/Propel1/Form/ChoiceList/ModelChoiceList.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
	src/Symfony/Component/Security/Core/Encoder/BasePasswordEncoder.php
	src/Symfony/Component/Validator/Constraints/ChoiceValidator.php
	src/Symfony/Component/Validator/Constraints/CollectionValidator.php
	src/Symfony/Component/Validator/Constraints/FileValidator.php
	src/Symfony/Component/Validator/Constraints/Isbn.php
	src/Symfony/Component/Validator/Constraints/IsbnValidator.php
	src/Symfony/Component/Validator/Constraints/LengthValidator.php
	src/Symfony/Component/Validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
	src/Symfony/Component/Validator/Tests/Constraints/BlankValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/ChoiceValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/CollectionValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/DateTimeValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/DateValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/EmailValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/FalseValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/FileValidatorPathTest.php
	src/Symfony/Component/Validator/Tests/Constraints/FileValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/IbanValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/IpValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/IsbnValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/NullValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/RegexValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/TimeValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/TrueValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/UrlValidatorTest.php
2014-08-05 11:00:40 +02:00
Bernhard Schussek
3bed1b7988 Merge branch '2.3' into 2.4
* 2.3: (22 commits)
  Fix incorrect romanian plural translations
  fix axes handling in Crawler::filterXPath()
  fix some docblocks
  Fixed self-reference in 'service_container' service breaks garbage collection (and clone).
  [Process] Fix tests when pcntl is not available.
  [DependencyInjection] Roll back changes made to generated files.
  [Console] Roll back changes made to fixture files.
  [Validator] Added more detailed inline documentation
  [Validator] Removed information from the violation output if the value is an array, object or resource
  partially reverted previous commit
  fixed CS
  properly handle null data when denormalizing
  [Validator] Renamed valueToString() to formatValue(); added missing formatValue() calls
  [Validator] Fixed CS
  [Validator] Fixed date-to-string conversion tests to match ICU 51
  [Validator] Added "{{ value }}" parameters where they were missing
  [Validator] Simplified and explained the LuhnValidator
  [Validator] Simplified IssnValidator
  [Validator] Fixed and simplified IsbnValidator
  [Validator] Simplified IBAN validation algorithm
  ...

Conflicts:
	src/Symfony/Component/Console/Helper/DescriptorHelper.php
	src/Symfony/Component/DependencyInjection/Container.php
	src/Symfony/Component/DomCrawler/Tests/CrawlerTest.php
	src/Symfony/Component/HttpFoundation/File/UploadedFile.php
	src/Symfony/Component/HttpKernel/Fragment/FragmentHandler.php
	src/Symfony/Component/Validator/Constraints/AbstractComparisonValidator.php
	src/Symfony/Component/Validator/Constraints/CollectionValidator.php
	src/Symfony/Component/Validator/Tests/Constraints/EqualToValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/IdenticalToValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/NotEqualToValidatorTest.php
	src/Symfony/Component/Validator/Tests/Constraints/NotIdenticalToValidatorTest.php
2014-08-04 12:16:36 +02:00
Fabien Potencier
73ddf39ffc bug #11428 [Serializer] properly handle null data when denormalizing (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

[Serializer] properly handle null data when denormalizing

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

Commits
-------

123fc62 properly handle null data when denormalizing
2014-08-01 08:14:57 +02:00
Fabien Potencier
e9022adaef fixed CS 2014-07-29 20:09:11 +02:00
Fabien Potencier
21e7ad751d fixed CS 2014-07-25 07:27:09 +02:00
Christian Flothmann
123fc62652 properly handle null data when denormalizing
If null is passed to denormalize(), no property values can be set on
the denormalized object. Additionally, this fixes passing values to
the denormalized object's constructor if the incoming data is an object.
2014-07-24 20:40:16 +02:00
Matthew Vickery
9d6b20caa3 Added support for encoding and decoding namespaced xml (xmlns) 2014-07-12 11:14:57 +02:00
Fabien Potencier
8b54211471 minor #11233 [Serializer] Added a test for decoding xml with whitespaces (florianv)
This PR was merged into the 2.6-dev branch.

Discussion
----------

[Serializer] Added a test for decoding xml with whitespaces

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

The PR 466a3d70b7 introduced a BC break because white spaces were previously decoded as text nodes.

So this PR reverts it and adds a context option to configure it.

Commits
-------

f5bf45e [Serializer] Added a test for decoding xml with whitespaces
2014-07-04 08:14:10 +02:00
Fabien Potencier
a22858ba57 Merge branch '2.4' into 2.5
* 2.4:
  Fixed failed config schema loads due to libxml_disable_entity_loader usage.
  enabled PHP 5.6 for tests
  [Process] Fix ExecutableFinder with open basedir
  Refactored the CssSelector to remove the circular object graph
  Fix mocks to support >=5.5.14 and >=5.4.30
  [ClassLoader] fixed PHP warning on PHP 5.3
  [Validator] added Lithuanian translation for empty file
  Added missing dutch translations
  [Components][Serializer] optional constructor arguments can be omitted during the denormalization process
  [DomCrawler] properly handle buttons with single and double quotes inside the name attribute
  Added missing pt and pt_BR translations
2014-07-01 08:40:40 +02:00
Fabien Potencier
5b2e34f765 Merge branch '2.3' into 2.4
* 2.3:
  Fixed failed config schema loads due to libxml_disable_entity_loader usage.
  enabled PHP 5.6 for tests
  [Process] Fix ExecutableFinder with open basedir
  Refactored the CssSelector to remove the circular object graph
  Fix mocks to support >=5.5.14 and >=5.4.30
  [ClassLoader] fixed PHP warning on PHP 5.3
  [Components][Serializer] optional constructor arguments can be omitted during the denormalization process
  [DomCrawler] properly handle buttons with single and double quotes inside the name attribute

Conflicts:
	src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
2014-07-01 08:40:32 +02:00
florianv
f5bf45e6da [Serializer] Added a test for decoding xml with whitespaces 2014-06-26 17:24:45 +02:00
Christian Flothmann
5bb2345790 [Components][Serializer] optional constructor arguments can be omitted during the denormalization process 2014-06-24 23:45:04 +02:00
fieg
466a3d70b7 [serializer] fixed whitespace issue when decoding xml 2014-06-04 12:17:52 +02:00
fieg
48d9f36ea0 [Serializer] fixed bc-break with cdata-section nodes 2014-06-03 14:01:38 +02:00
Fabien Potencier
0bab829372 Merge branch '2.4'
* 2.4:
  unified return null usages
  [Validator] added Japanese translation
  Textarea value should default to empty string instead of null.
  Fix doc blocks
  [Process] Fix #10681, process are failing on Windows Server 2003
  updated doc
  [Security] fix DBAL connection typehint
  [HttpFoundation] status 201 is allowed to have a body
  unified return null usages

Conflicts:
	src/Symfony/Component/DependencyInjection/ContainerBuilder.php
	src/Symfony/Component/DomCrawler/Crawler.php
	src/Symfony/Component/Security/Core/Authentication/Provider/PreAuthenticatedAuthenticationProvider.php
2014-04-18 22:40:13 +02:00
Fabien Potencier
2827747108 Merge branch '2.3' into 2.4
* 2.3:
  Textarea value should default to empty string instead of null.
  Fix doc blocks
  [Process] Fix #10681, process are failing on Windows Server 2003
  [Security] fix DBAL connection typehint
  [HttpFoundation] status 201 is allowed to have a body
  unified return null usages

Conflicts:
	src/Symfony/Component/Console/Helper/DescriptorHelper.php
	src/Symfony/Component/DependencyInjection/ContainerBuilder.php
	src/Symfony/Component/Finder/Tests/Iterator/RecursiveDirectoryIteratorTest.php
	src/Symfony/Component/Form/Extension/Core/DataTransformer/IntegerToLocalizedStringTransformer.php
	src/Symfony/Component/HttpKernel/Fragment/InlineFragmentRenderer.php
2014-04-18 22:37:09 +02:00
Fabien Potencier
d1d569bf7b unified return null usages 2014-04-16 09:43:51 +02:00
Fabien Potencier
3baa43b44e Merge branch '2.4'
* 2.4: (52 commits)
  Fix #8205 : Deprecate file mode update when calling dumpFile
  Fix #10437: Catch exceptions when reloading a no-cache request
  Fix libxml_use_internal_errors and libxml_disable_entity_loader usage
  removed ini check to make uploadedfile work on gae
  Update OptionsResolver.php
  fixed comment in forms.xml file
  Clean KernelInterface docblocks
  Cast the group name as a string
  Fixed doc of InitAclCommand
  [Form] Fix "Array was modified outside object" in ResizeFormListener.
  Fix IBAN validator
  [Process] Remove unreachable code + avoid skipping tests in sigchild environment
  Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute
  Added travis_retry to .travis.yml
  [Process] fix some typos and refactor some code
  [Process] Fix unit tests in sigchild disabled environment
  [Process] Trow exceptions in case a Process method is supposed to be called after termination
  fixed typo
  [Process] fixed fatal errors in getOutput and getErrorOutput when process was not started
  [Process] Fix escaping on Windows
  ...

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php
	src/Symfony/Component/Form/Extension/Core/EventListener/ResizeFormListener.php
	src/Symfony/Component/Process/Process.php
	src/Symfony/Component/Process/ProcessPipes.php
	src/Symfony/Component/Process/Tests/AbstractProcessTest.php
2014-03-26 12:51:10 +01:00
Fabien Potencier
ab42e9cbc4 Merge branch '2.3' into 2.4
* 2.3: (34 commits)
  Fix #8205 : Deprecate file mode update when calling dumpFile
  Fix #10437: Catch exceptions when reloading a no-cache request
  Fix libxml_use_internal_errors and libxml_disable_entity_loader usage
  removed ini check to make uploadedfile work on gae
  Update OptionsResolver.php
  fixed comment in forms.xml file
  Clean KernelInterface docblocks
  Cast the group name as a string
  Fixed doc of InitAclCommand
  [Form] Fix "Array was modified outside object" in ResizeFormListener.
  Fix IBAN validator
  [Process] Remove unreachable code + avoid skipping tests in sigchild environment
  Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute
  Added travis_retry to .travis.yml
  [Process] fix some typos and refactor some code
  [Process] Fix unit tests in sigchild disabled environment
  [Process] Trow exceptions in case a Process method is supposed to be called after termination
  fixed typo
  [Process] fixed fatal errors in getOutput and getErrorOutput when process was not started
  [Process] Fix escaping on Windows
  ...

Conflicts:
	src/Symfony/Component/DomCrawler/Crawler.php
	src/Symfony/Component/Filesystem/Filesystem.php
	src/Symfony/Component/Process/Process.php
2014-03-26 12:35:33 +01:00
Romain Neutron
489b8aea90 Fix libxml_use_internal_errors and libxml_disable_entity_loader usage 2014-03-26 08:21:50 +01:00
Fabien Potencier
4a1639acc7 feature #10314 [Serializer] added support for is.* methods in GetSetMethodNormalizer (tiraeth)
This PR was squashed before being merged into the 2.5-dev branch (closes #10314).

Discussion
----------

[Serializer] added support for is.* methods in GetSetMethodNormalizer

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

Using ``is`` prefix for boolean variables is considered a standard, not only in PHP but also in Java (from which Symfony2 derives lot standards).

I was not sure if this is BCB but answered "no". Was not sure if I should update ``CHANGELOG`` file and did so, but if you find it irrelevant, go ahead and merge without it. I don't know if I should create a PR for docs because it does not explicitly say that the normalizer supports only ``get.*`` methods as getters.

_Note: Objects that contain behaviour also can use other prefixes like ``can``, ``has``, ``should``, but their presence in ``GetSetMethodNormalizer`` is relevant as they do not provide state (``has`` is debatable)._

Commits
-------

480219f [Serializer] added support for is.* methods in GetSetMethodNormalizer
2014-03-03 16:53:45 +01:00
Marcin Chwedziak
480219f1d3 [Serializer] added support for is.* methods in GetSetMethodNormalizer 2014-03-03 16:52:29 +01:00
Gildas Quéméner
a92aa5e849 Throw exception when unable to normalize embedded object
Added a check to ensure that injected serializer of the
GetSetMethodNormalizer is a normalizer before normalizing object value.
2014-02-27 15:27:25 +01:00
Fabien Potencier
e2ac5dfc78 Merge branch '2.3' into 2.4
* 2.3:
  fixed various inconsistencies
  reduced recursion when building DumperPrefixCollection
  renamed variables - making next change more readable
  removing dead code.
  [DomCrawler] Fixed filterXPath() chaining
  [DomCrawler] Fixed incorrect handling of image inputs

Conflicts:
	src/Symfony/Component/DomCrawler/Crawler.php
	src/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php
	src/Symfony/Component/Form/Extension/DependencyInjection/DependencyInjectionExtension.php
	src/Symfony/Component/Serializer/Tests/Normalizer/CustomNormalizerTest.php
	src/Symfony/Component/Templating/Tests/Loader/CacheLoaderTest.php
	src/Symfony/Component/Templating/Tests/Loader/LoaderTest.php
2014-02-11 14:52:09 +01:00
Fabien Potencier
eb3f6c6efb fixed various inconsistencies 2014-02-11 11:29:24 +01:00
Matthieu Napoli
78ceed193f [Serializer] Added PropertyNormalizer, a new normalizer that maps an object's properties to an array 2013-12-10 17:57:13 +01:00
Fabien Potencier
990267f959 Merge branch '2.3' into 2.4
* 2.3:
  Fixed mistake in upgrade docu
  Container::camelize also takes backslashes into consideration
  fixed typos
  fixed @expectedException class names
  fixed some typos
  fixed @expectedException class names
  Typo and better wording for german validator translation
2013-11-26 17:40:27 +01:00
Fabien Potencier
e0b751a2d8 Merge branch '2.2' into 2.3
* 2.2:
  fixed some typos
  fixed @expectedException class names

Conflicts:
	src/Symfony/Component/Config/Tests/Definition/ArrayNodeTest.php
	src/Symfony/Component/Console/Tests/Command/CommandTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubLocaleTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubNumberFormatterTest.php
2013-11-25 15:49:41 +01:00
Fabien Potencier
8d69bb5886 fixed @expectedException class names 2013-11-25 09:44:14 +01:00