Actions
Task #78749
closedMake 7.6 Fluid capable of compiling ViewHelpers w/o CompilableInterface
Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2016-11-19
Due date:
% Done:
0%
Estimated time:
TYPO3 Version:
7
PHP Version:
Tags:
Complexity:
Sprint Focus:
Description
As a follow-up / cross-version compatibility concern I suggest changing the template compiling on Fluid on 7.6 LTS so it no longer (exclusively) depends on the presence of the CompilableInterface.
The reasons are:
- The Interface is merged with the plain ViewHelperInterface on TYPO3v8 and Fluid standalone (on TYPO3v8 the CompilableInterface is an alias, in Fluid standalone it no longer exists).
- Fluid ViewHelpers which can now compile on both versions since https://review.typo3.org/#/c/50676/ would need to implement an interface that is deprecated on one version.
- Fluid is technically capable of compiling ViewHelpers by checking if the compile() method exists; as a second decision after checking if the CompilableInterface exists
This can be achieved without breaking things - and it does not imply any changes to core ViewHelpers. On 7.6 those ViewHelpers will still use the interface - on TYPO3v8+ they no longer use it and instead assume compilable.
Goal of the change:
- Allowing third party ViewHelpers to not implement CompilableInterface but instead implement a compile() method and get the same functionality.
Actions