Breaking <f:case default="true">
Due to the switch to Fluid standalone, the following template markup is not supported anymore:
<f:case default="true"> ... </f:case>
It must be changed to read:
<f:defaultCase> ... </f:defaultCase>
This breaking change is properly documented in #69863. However there is no possible compatibility fallback and this means extension authors are unable to ship code compatible with TYPO3 7 and 8 (not even speaking about 6.2 which is still a valid supported LTS version) without adding much logic to change the template in use.
Furthermore, adding this business logic is likely to break the work of integrators who probably adapted the templates to fit their need.
A compatibility layer should really be added.
[TASK] Compatibility to safely deprecate f:case "default" argument
A compatibility layer can be left in place to support "default" used
on f:case. Internally the compatibility ViewHelper changes the class
name used in the ViewHelperNode which gets reflected in the compiled
template as well as the uncompiled rendering.
ReflectionProperty had to be used since no public API exists for
manipulating ViewHelperNodes in this way.
Reviewed-by: Daniel Goerz <email@example.com>
Tested-by: Daniel Goerz <firstname.lastname@example.org>
Reviewed-by: Xavier Perseguers <email@example.com>
Tested-by: Xavier Perseguers <firstname.lastname@example.org>