Important: #73565 - AbstractConditionViewHelper no longer automatically compilable¶
See forge#73565
Description¶
CompilableInterface is removed from the abstract AbstractConditionViewHelper and is now implemented by each of the condition ViewHelpers. The base class still provides every method it did before but third-party ViewHelpers must now indicate that they are compilable by implementing the required interface.
The change is related to a previous change which made evaluate
the API
to evaluate the input argument conditions in any condition ViewHelper. The change
is done as a preventative measure, preventing issues when third-party condition
ViewHelpers were compiled but did not implement the evaluate
method.
Now, such ViewHelpers will prevent compiling entirely until the author of the class
has implemented CompilableInterface and the evaluate
method.
Making such third-party ViewHelpers no longer compilable (and thus decreasing performance when they are used) is chosen in favor of preserving the current behavior where such ViewHelpers would be completely unable to correctly evaluate the condition at all.