[TASK] Avoid runtime reflection calls in ObjectAccess
ObjectAccess had two kinds of runtime reflection calls: 1) To gather data about object properties and methods 2) To make non public properties accessible The first one is tackled by using class schema instances and by using the property accessor of symfony/property-access. The latter is tackled by deprecating all method arguments that trigger reflection to make properties accessible. In the future, gettable/settable properties need to be either public or have a getter (get*/has*/is*) or setter. Releases: master Resolves: #87332 Change-Id: I6ecef81de7aa4cc1244166d683874a1a87ac6bb7 Reviewed-on: https://review.typo3.org/59331 Reviewed-by:André Schließer <andy.schliesser@gmail.com> Tested-by:
André Schließer <andy.schliesser@gmail.com> Reviewed-by:
Andreas Wolf <andreas.wolf@typo3.org> Tested-by:
Andreas Wolf <andreas.wolf@typo3.org>
Showing
- composer.json 1 addition, 0 deletionscomposer.json
- composer.lock 68 additions, 1 deletioncomposer.lock
- typo3/sysext/core/Documentation/Changelog/master/Deprecation-87332-AvoidRuntimeReflectionCallsInObjectAccess.rst 40 additions, 0 deletions...ation-87332-AvoidRuntimeReflectionCallsInObjectAccess.rst
- typo3/sysext/extbase/Classes/Property/TypeConverter/ObjectConverter.php 3 additions, 4 deletions...xtbase/Classes/Property/TypeConverter/ObjectConverter.php
- typo3/sysext/extbase/Classes/Reflection/ClassSchema.php 1 addition, 1 deletiontypo3/sysext/extbase/Classes/Reflection/ClassSchema.php
- typo3/sysext/extbase/Classes/Reflection/ObjectAccess.php 204 additions, 145 deletionstypo3/sysext/extbase/Classes/Reflection/ObjectAccess.php
- typo3/sysext/extbase/Classes/Validation/Validator/GenericObjectValidator.php 9 additions, 1 deletion...e/Classes/Validation/Validator/GenericObjectValidator.php
- typo3/sysext/extbase/Tests/Unit/Mvc/View/JsonViewTest.php 2 additions, 0 deletionstypo3/sysext/extbase/Tests/Unit/Mvc/View/JsonViewTest.php
- typo3/sysext/extbase/Tests/Unit/Reflection/ObjectAccessTest.php 5 additions, 67 deletions...sysext/extbase/Tests/Unit/Reflection/ObjectAccessTest.php
- typo3/sysext/extbase/Tests/Unit/Validation/Validator/CollectionValidatorTest.php 0 additions, 1 deletion...sts/Unit/Validation/Validator/CollectionValidatorTest.php
- typo3/sysext/extbase/Tests/Unit/Validation/Validator/GenericObjectValidatorTest.php 10 additions, 0 deletions.../Unit/Validation/Validator/GenericObjectValidatorTest.php
- typo3/sysext/extbase/Tests/UnitDeprecated/Reflection/ObjectAccessTest.php 95 additions, 0 deletions...base/Tests/UnitDeprecated/Reflection/ObjectAccessTest.php
- typo3/sysext/extbase/composer.json 1 addition, 0 deletionstypo3/sysext/extbase/composer.json
- typo3/sysext/install/Configuration/ExtensionScanner/Php/MethodArgumentDroppedStaticMatcher.php 18 additions, 0 deletions...tensionScanner/Php/MethodArgumentDroppedStaticMatcher.php
- typo3/sysext/install/Configuration/ExtensionScanner/Php/MethodCallStaticMatcher.php 7 additions, 0 deletions...guration/ExtensionScanner/Php/MethodCallStaticMatcher.php
Please register or sign in to comment