Commit Graph

335 Commits

Author SHA1 Message Date
Nicolas Grekas
db208e3e25 Merge branch '3.0'
* 3.0:
  [PropertyAccess] ->getValue() should be read-only
  [VarDumper] Fix dumping type hints for non-existing parent classes
  [Config] Fix XmlUtilsTest namespace
  [Console] [TableHelper] make it work with SymfonyStyle.
  Remove dead code
  [FrameworkBundle] Better output for user in ContainerDebugCommand
  [Routing] add query param if value is different from default
2016-04-20 20:54:21 +02:00
Nicolas Grekas
ffb7573bd7 Merge branch '2.8' into 3.0
* 2.8:
  [PropertyAccess] ->getValue() should be read-only
  [VarDumper] Fix dumping type hints for non-existing parent classes
  [Config] Fix XmlUtilsTest namespace
  [Console] [TableHelper] make it work with SymfonyStyle.
  Remove dead code
  [Routing] add query param if value is different from default

Conflicts:
	src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
2016-04-20 20:53:54 +02:00
Nicolas Grekas
68415abf71 Merge branch '2.7' into 2.8
* 2.7:
  [PropertyAccess] ->getValue() should be read-only
  [VarDumper] Fix dumping type hints for non-existing parent classes
  [Config] Fix XmlUtilsTest namespace
  [Console] [TableHelper] make it work with SymfonyStyle.
  Remove dead code
  [Routing] add query param if value is different from default

Conflicts:
	src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
2016-04-20 20:52:26 +02:00
Nicolas Grekas
1ff12d92fd Merge branch '2.3' into 2.7
* 2.3:
  [PropertyAccess] ->getValue() should be read-only
  [Config] Fix XmlUtilsTest namespace
  [Routing] add query param if value is different from default

Conflicts:
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
2016-04-20 20:45:26 +02:00
Nicolas Grekas
fa6852968b [PropertyAccess] ->getValue() should be read-only 2016-04-20 17:25:54 +02:00
Christian Flothmann
af9ec74edb Merge branch '3.0'
* 3.0: (24 commits)
  [Filesystem] Better error handling in remove()
  [DependencyInjection] Add coverage for invalid Expression in exportParameters
  [DependencyInjection] Add coverage for all invalid arguments in exportParameters
  anonymous services are always private
  [Form] FormValidator removed code related to removed  option
  [Console] Correct time formatting.
  [WebProfilerBundle] Fixed error from unset twig variable
  Force profiler toolbar svg display
  [DependencyInjection] Resolve aliases before removing abstract services + add tests
  Fix Dom Crawler select option with empty value
  Remove unnecessary option assignment
  fix tests (use non-deprecated options)
  remove unused variable
  mock the proper method
  [PropertyAccess] Fix regression
  [HttpFoundation] Improve phpdoc
  [Logging] Add support for firefox in ChromePhpHandler
  Windows 10 version check in just one line
  Detect CLI color support for Windows 10 build 10586
  [Security] Fixed SwitchUserListener when exiting an impersonication with AnonymousToken
  ...
2016-04-12 20:27:47 +02:00
Christian Flothmann
e72d509012 Merge branch '2.8' into 3.0
* 2.8: (23 commits)
  [Filesystem] Better error handling in remove()
  [DependencyInjection] Add coverage for invalid Expression in exportParameters
  [DependencyInjection] Add coverage for all invalid arguments in exportParameters
  anonymous services are always private
  [Console] Correct time formatting.
  [WebProfilerBundle] Fixed error from unset twig variable
  Force profiler toolbar svg display
  [DependencyInjection] Resolve aliases before removing abstract services + add tests
  Fix Dom Crawler select option with empty value
  Remove unnecessary option assignment
  fix tests (use non-deprecated options)
  remove unused variable
  mock the proper method
  [PropertyAccess] Fix regression
  [HttpFoundation] Improve phpdoc
  [Logging] Add support for firefox in ChromePhpHandler
  Windows 10 version check in just one line
  Detect CLI color support for Windows 10 build 10586
  [Security] Fixed SwitchUserListener when exiting an impersonication with AnonymousToken
  [EventDispatcher] Try first if the event is Stopped
  ...
2016-04-12 20:09:53 +02:00
Christian Flothmann
ed9c94c719 Merge branch '2.7' into 2.8
* 2.7:
  [Filesystem] Better error handling in remove()
  [DependencyInjection] Add coverage for invalid Expression in exportParameters
  [DependencyInjection] Add coverage for all invalid arguments in exportParameters
  anonymous services are always private
  [Console] Correct time formatting.
  [DependencyInjection] Resolve aliases before removing abstract services + add tests
  Fix Dom Crawler select option with empty value
  Remove unnecessary option assignment
  remove unused variable
  mock the proper method
  [PropertyAccess] Fix regression
2016-04-12 20:01:21 +02:00
Christian Flothmann
064aedf9e3 Merge branch '2.3' into 2.7
* 2.3:
  [DependencyInjection] Resolve aliases before removing abstract services + add tests
  Fix Dom Crawler select option with empty value
  Remove unnecessary option assignment
  remove unused variable
  [PropertyAccess] Fix regression
2016-04-09 12:56:56 +02:00
Nicolas Grekas
2b30d486db [PropertyAccess] Fix regression 2016-04-05 18:42:48 +02:00
Teoh Han Hui
8abebf6417 Add Inflector component (from StringUtil of PropertyAccess) 2016-03-31 15:36:48 +08:00
Nicolas Grekas
d53874b747 Merge branch '3.0'
* 3.0: (22 commits)
  Fix backport
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
  [Bridge\PhpUnit] Workaround old phpunit bug, no colors in weak mode, add tests
  [PropertyAccess] Fix isPropertyWritable not using the reflection cache
  [PropertyAccess] Backport fixes from 2.7
  [FrameworkBundle][2.8] Add tests for the Controller class
  [DependencyInjection] Update changelog
  Added WebProfiler toolbar ajax panel table layout css.
  [Validator] use correct term for a property in docblock (not "option")
  [Routing] small refactoring for scheme requirement
  [PropertyAccess] Remove most ref mismatches to improve perf
  [PropertyInfo] Support Doctrine custom mapping type in DoctrineExtractor
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  [Process] fix docblock syntax
  use the clock mock for progress indicator tests
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class
  ...

Conflicts:
	src/Symfony/Bridge/PhpUnit/SymfonyTestsListener.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
2016-03-23 14:33:04 +01:00
Nicolas Grekas
3c40825202 Merge branch '2.8' into 3.0
* 2.8: (22 commits)
  Fix backport
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
  [Bridge\PhpUnit] Workaround old phpunit bug, no colors in weak mode, add tests
  [PropertyAccess] Fix isPropertyWritable not using the reflection cache
  [PropertyAccess] Backport fixes from 2.7
  [FrameworkBundle][2.8] Add tests for the Controller class
  [DependencyInjection] Update changelog
  Added WebProfiler toolbar ajax panel table layout css.
  [Validator] use correct term for a property in docblock (not "option")
  [Routing] small refactoring for scheme requirement
  [PropertyAccess] Remove most ref mismatches to improve perf
  [PropertyInfo] Support Doctrine custom mapping type in DoctrineExtractor
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  [Process] fix docblock syntax
  use the clock mock for progress indicator tests
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class
  ...

Conflicts:
	.travis.yml
	composer.json
	src/Symfony/Bridge/PhpUnit/DeprecationErrorHandler.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
2016-03-23 14:23:25 +01:00
Nicolas Grekas
42815018ed Merge branch '2.7' into 2.8
* 2.7:
  Fix backport
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
  [Bridge\PhpUnit] Workaround old phpunit bug, no colors in weak mode, add tests
  [PropertyAccess] Fix isPropertyWritable not using the reflection cache
  [PropertyAccess] Backport fixes from 2.7
  [Validator] use correct term for a property in docblock (not "option")
  [Routing] small refactoring for scheme requirement
  [PropertyAccess] Remove most ref mismatches to improve perf
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  [Process] fix docblock syntax
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class
  [FrameworkBundle] Add tests for the Controller class
  [Process] getIncrementalOutput should work without calling getOutput

Conflicts:
	src/Symfony/Bridge/PhpUnit/DeprecationErrorHandler.php
	src/Symfony/Bridge/PhpUnit/TextUI/Command.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
2016-03-23 14:11:46 +01:00
Nicolas Grekas
c5dbb1d9b6 Merge branch '2.3' into 2.7
* 2.3:
  [travis] Upgrade phpunit wrapper & hirak/prestissimo
2016-03-23 13:40:00 +01:00
Nicolas Grekas
bf465eb6db [travis] Upgrade phpunit wrapper & hirak/prestissimo 2016-03-23 13:34:50 +01:00
Nicolas Grekas
8a52fcdbff [PropertyAccess] Fix isPropertyWritable not using the reflection cache 2016-03-22 10:40:06 +01:00
Nicolas Grekas
cb1c87ac5f [PropertyAccess] Backport fixes from 2.7 2016-03-22 10:19:04 +01:00
Nicolas Grekas
86c0a17721 Merge branch '2.3' into 2.7
* 2.3:
  [Validator] use correct term for a property in docblock (not "option")
  [PropertyAccess] Remove most ref mismatches to improve perf
  [Validator] EmailValidator cannot extract hostname if email contains multiple @ symbols
  [NumberFormatter] Fix invalid numeric literal on PHP 7
  Use XML_ELEMENT_NODE in nodeType check
  [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking
  [PropertyAccess] Throw an UnexpectedTypeException when the type do not match
  [FrameworkBundle] Add tests for the Controller class

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/Controller/ControllerTest.php
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php
	src/Symfony/Component/PropertyAccess/PropertyPath.php
	src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
	src/Symfony/Component/Validator/Constraints/EmailValidator.php
2016-03-22 09:55:46 +01:00
Nicolas Grekas
72940d7588 [PropertyAccess] Remove most ref mismatches to improve perf 2016-03-18 15:37:16 +01:00
Nicolas Grekas
5fe2b06bc4 [PropertyAccess] Reduce overhead of UnexpectedTypeException tracking 2016-03-17 09:22:17 +01:00
Kévin Dunglas
10c8d5eadb [PropertyAccess] Throw an UnexpectedTypeException when the type do not match 2016-03-17 09:11:03 +01:00
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
Javier Eguiluz
2e812481c9 Updated all the README files 2016-03-04 08:12:06 +01:00
Fabien Potencier
48f05ecad2 feature #17738 [PropertyAccess] Throw an InvalidArgumentException when the type do not match (dunglas)
This PR was squashed before being merged into the 3.1-dev branch (closes #17738).

Discussion
----------

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

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

Currently, when the Property Access Component call a setter with a value not matching its typehint, a `\TypeError` is thrown with PHP 7 and a `PHP Catchable fatal error` with PHP 5.

This PR make the component returning an `InvalidArgumentException` with both version. It's a (better) alternative to #17660 (the hardening part) to make the Symfony Serializer (and probably many other pieces of code) more robust when types do not match.

/cc @csarrazi @mRoca @blazarecki

Commits
-------

e70fdbc [PropertyAccess] Throw an InvalidArgumentException when the type do not match
2016-02-26 07:20:42 +01:00
Kévin Dunglas
e70fdbc8cb [PropertyAccess] Throw an InvalidArgumentException when the type do not match 2016-02-26 07:20:38 +01:00
Nicolas Grekas
2d75718e6b Merge branch '3.0'
* 3.0:
  [VarDumper] Fix tests on PHP 7
  [DomCrawler] Clarify the value returned by getPhpFiles()
  [DependencyInjection] Fix #16461 Let Container::set() replace existing aliases
  avoid (string) catchable fatal error for instances of __PHP_Incomplete_Class
  remove unnecessary retrieval and setting of data
  Update validators.fr.xlf
  avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
  sendContent return as parent.
  [DomCrawler] Remove the overridden getHash() method to prevent problems when cloning the crawler
  [FrameworkBundle] Fix a typo
  Added more exceptions to singularify method
  Add width attribute on SVG
  [FrameworkBundle] Support autowiring for TranslationInterface
  [Validator] remove obsolete context and PropertyAccess code
  [WebProfiler] Fixed styles for search block and menu profiler for IE Edge
2016-02-13 10:24:02 +01:00
Nicolas Grekas
74c4974998 Merge branch '2.8' into 3.0
* 2.8:
  [VarDumper] Fix tests on PHP 7
  [DomCrawler] Clarify the value returned by getPhpFiles()
  [DependencyInjection] Fix #16461 Let Container::set() replace existing aliases
  avoid (string) catchable fatal error for instances of __PHP_Incomplete_Class
  remove unnecessary retrieval and setting of data
  Update validators.fr.xlf
  avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
  sendContent return as parent.
  [DomCrawler] Remove the overridden getHash() method to prevent problems when cloning the crawler
  [FrameworkBundle] Fix a typo
  Added more exceptions to singularify method
  Add width attribute on SVG
  [FrameworkBundle] Support autowiring for TranslationInterface
  [WebProfiler] Fixed styles for search block and menu profiler for IE Edge

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/ContainerTest.php
	src/Symfony/Component/DomCrawler/Crawler.php
2016-02-13 10:23:44 +01:00
Nicolas Grekas
1d8d43b4e7 Merge branch '2.7' into 2.8
* 2.7:
  [VarDumper] Fix tests on PHP 7
  [DomCrawler] Clarify the value returned by getPhpFiles()
  [DependencyInjection] Fix #16461 Let Container::set() replace existing aliases
  avoid (string) catchable fatal error for instances of __PHP_Incomplete_Class
  remove unnecessary retrieval and setting of data
  avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
  sendContent return as parent.
  [FrameworkBundle] Fix a typo
  Added more exceptions to singularify method
2016-02-13 10:21:29 +01:00
Nicolas Grekas
ec7b3f2053 Merge branch '2.3' into 2.7
* 2.3:
  [DomCrawler] Clarify the value returned by getPhpFiles()
  [DependencyInjection] Fix #16461 Let Container::set() replace existing aliases
  Added more exceptions to singularify method
2016-02-13 10:21:13 +01:00
Javier Eguiluz
f5daa0dea9 Added more exceptions to singularify method 2016-02-09 22:08:46 +01:00
Konstantin.Myakshin
8db691ab94 Static code analysis 2016-01-25 19:00:36 +02:00
Vladimir Reznichenko
81f81812a5 [2.3] Static Code Analysis for Components 2016-01-12 12:31:34 +01:00
Fabien Potencier
d35d70ee4d Merge branch '3.0'
* 3.0:
  updated copyright year
  updated copyright year
  Update copyright year
  [2.3] Static Code Analysis for Components
2016-01-03 16:35:40 +01:00
Fabien Potencier
5931ef7288 Merge branch '2.8' into 3.0
* 2.8:
  updated copyright year
  updated copyright year
  Update copyright year
  [2.3] Static Code Analysis for Components
2016-01-03 16:35:16 +01:00
Fabien Potencier
0606d9c8b4 Merge branch '2.7' into 2.8
* 2.7:
  updated copyright year
  Update copyright year
  [2.3] Static Code Analysis for Components
2016-01-03 16:33:41 +01:00
Fabien Potencier
d6f503660f Merge branch '2.3' into 2.7
* 2.3:
  Update copyright year
  [2.3] Static Code Analysis for Components
2016-01-03 16:32:00 +01:00
Diego Saint Esteben
ce067e6460 Update copyright year 2016-01-01 23:53:47 -03:00
Nicolas Grekas
676ddab73b Merge branch '3.0'
* 3.0:
  [Process] Fix transient test on Windows
  [Process] Make tests more deterministic
  [PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
  [Validator] fixed wrong php docs
  Improved the design of the web debug toolbar
  [Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
  [Process] More robustness and deterministic tests
2015-12-23 09:01:03 +01:00
Nicolas Grekas
6c5f7364d5 Merge branch '2.8' into 3.0
* 2.8:
  [Process] Fix transient test on Windows
  [Process] Make tests more deterministic
  [PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
  Improved the design of the web debug toolbar
  [Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
  [Process] More robustness and deterministic tests
2015-12-23 09:00:11 +01:00
Nicolas Grekas
7fe0a3b922 Merge branch '2.7' into 2.8
* 2.7:
  [Process] Fix transient test on Windows
  [Process] Make tests more deterministic
  [PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
  [Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
  [Process] More robustness and deterministic tests
2015-12-23 08:56:26 +01:00
Nicolas Grekas
5dc2bb30ca Merge branch '2.3' into 2.7
* 2.3:
  [PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
  [Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
  [Process] More robustness and deterministic tests

Conflicts:
	src/Symfony/Component/Process/Process.php
	src/Symfony/Component/Process/Tests/ProcessTest.php
2015-12-23 07:54:35 +01:00
Alessandro Chitolina
d0c0294a7b [PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #17102
| License       | MIT
| Doc PR        |
2015-12-22 18:06:45 +01:00
Tobias Schultze
e612b92ed0 Merge branch '3.0' 2015-12-15 03:03:25 +01:00
Tobias Schultze
06dd574627 Merge branch '2.8' into 3.0 2015-12-15 03:03:07 +01:00
Tobias Schultze
3a57b77bc7 Merge branch '2.7' into 2.8 2015-12-15 02:39:37 +01:00
Tobias Schultze
88d586b447 Merge branch '2.3' into 2.7 2015-12-15 02:31:17 +01:00