[TASK] Allow DI for extbase validators
With #92238, it has been postulated that Extbase validators should not be dependency injection aware. Further places following this idea have been done in v11 with #94451 and #94384. A final breaking ReST file has been added with #95026. All of that is pretty unfortunate and there is simply no reason that Extbase validators can not get dependencies injected, no matter if they're not singletons. This patch specifically targets v11 to allow dependency injection in Extbase validators again if extension authors really need this, and don't want to stick to manual dependency retrieval as outlined in #95026. This patch should basically mitigate issues for extension upgrades and paves the way for a more solid general solution in v12. Extension authors have a more smooth upgrade path, especially when supporting two core versions at the same time. The v12 version of this patch is identical with v11 for now - The breaking interface change, adapting all core validators, and ...
Showing
- Build/phpstan/phpstan-baseline.neon 20 additions, 0 deletionsBuild/phpstan/phpstan-baseline.neon
- typo3/sysext/core/Documentation/Changelog/11.0/Breaking-92238-ServiceInjectionInExtbaseValidators.rst 9 additions, 2 deletions....0/Breaking-92238-ServiceInjectionInExtbaseValidators.rst
- typo3/sysext/core/Documentation/Changelog/11.5.x/Important-96332-ExtbaseValidatorsCanUseDependencyInjection.rst 143 additions, 0 deletions...tant-96332-ExtbaseValidatorsCanUseDependencyInjection.rst
- typo3/sysext/extbase/Classes/Mvc/Controller/ActionController.php 18 additions, 15 deletions...ysext/extbase/Classes/Mvc/Controller/ActionController.php
- typo3/sysext/extbase/Classes/Validation/Validator/AbstractCompositeValidator.php 35 additions, 27 deletions...asses/Validation/Validator/AbstractCompositeValidator.php
- typo3/sysext/extbase/Classes/Validation/Validator/AbstractValidator.php 34 additions, 26 deletions...xtbase/Classes/Validation/Validator/AbstractValidator.php
- typo3/sysext/extbase/Classes/Validation/Validator/ValidatorInterface.php 16 additions, 0 deletions...tbase/Classes/Validation/Validator/ValidatorInterface.php
- typo3/sysext/extbase/Classes/Validation/ValidatorResolver.php 9 additions, 1 deletion...3/sysext/extbase/Classes/Validation/ValidatorResolver.php
- typo3/sysext/extbase/Tests/Fixture/ValidatorThatDoesNotImplementValidatorInterfaceValidator.php 0 additions, 25 deletions...idatorThatDoesNotImplementValidatorInterfaceValidator.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/test_validators/Classes/Domain/Model/AnotherModel.php 1 addition, 1 deletion...ons/test_validators/Classes/Domain/Model/AnotherModel.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/test_validators/Classes/Domain/Model/Model.php 3 additions, 3 deletions...Extensions/test_validators/Classes/Domain/Model/Model.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/test_validators/Classes/Validation/Validator/CustomNotInjectableValidator.php 8 additions, 3 deletions...ses/Validation/Validator/CustomNotInjectableValidator.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/test_validators/Classes/Validation/Validator/CustomValidator.php 57 additions, 0 deletions...lidators/Classes/Validation/Validator/CustomValidator.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/test_validators/Configuration/Services.yaml 12 additions, 0 deletions...es/Extensions/test_validators/Configuration/Services.yaml
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/test_validators/ext_emconf.php 21 additions, 0 deletions...tional/Fixtures/Extensions/test_validators/ext_emconf.php
- typo3/sysext/extbase/Tests/Functional/Validation/ValidatorResolverTest.php 36 additions, 15 deletions...ase/Tests/Functional/Validation/ValidatorResolverTest.php
- typo3/sysext/extbase/Tests/Unit/Validation/Fixtures/Validation/Validator/CustomValidator.php 1 addition, 4 deletions...idation/Fixtures/Validation/Validator/CustomValidator.php
- typo3/sysext/extbase/Tests/Unit/Validation/Fixtures/Validation/Validator/CustomValidatorThatDoesNotImplementValidatorInterfaceValidator.php 1 addition, 4 deletions...idatorThatDoesNotImplementValidatorInterfaceValidator.php
- typo3/sysext/extbase/Tests/Unit/Validation/ValidatorClassNameResolverTest.php 24 additions, 24 deletions.../Tests/Unit/Validation/ValidatorClassNameResolverTest.php
- typo3/sysext/form/Classes/Domain/Model/Renderable/AbstractRenderable.php 9 additions, 2 deletions...rm/Classes/Domain/Model/Renderable/AbstractRenderable.php
Please register or sign in to comment