[TASK] Deprecate usage of @inject with non-public properties 18/54618/7
authorAlexander Schnitzler <git@alexanderschnitzler.de>
Sat, 11 Nov 2017 13:53:26 +0000 (14:53 +0100)
committerStefan Neufeind <typo3.neufeind@speedpartner.de>
Tue, 14 Nov 2017 06:42:23 +0000 (07:42 +0100)
commit83155a805877c817d24081ce7e58cb29a9015df1
tree1096cc58fcaf4bd4a208cbceaf87d7c48832f380
parentdb0508152532ad52cde44d4e4009029fed4f0139
[TASK] Deprecate usage of @inject with non-public properties

When using private or protected properties for Dependency Injection
via `@inject`, Extbase needs to use the object reflection API to
make these properties settable from the outside, which is quite
slow and cannot be cached in any way. Therefore property injection
should only work for public properties.

Releases: master
Resolves: #82975
Change-Id: Ia9c6eb48c34c46634e626f7cd97a2e743a6aba7b
Reviewed-on: https://review.typo3.org/54618
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Stefan Neufeind <typo3.neufeind@speedpartner.de>
Tested-by: Stefan Neufeind <typo3.neufeind@speedpartner.de>
typo3/sysext/core/Documentation/Changelog/master/Deprecation-82975-DeprecateUsageOfInjectWithNonPublicProperties.rst [new file with mode: 0644]
typo3/sysext/extbase/Classes/Reflection/ClassSchema.php