Fix merging nested <var /> in view.xml #7556
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Nested
<var />
in view.xml cannot be mergedProblem
The
view.xsd
defined that<var />
element can contain unlimited<var />
children.Despite of the nested
<var />
definition in xsd, it is not fully configured in the\Magento\Framework\Config\View
, that is,/view/vars/var
does not support nested<var />
.Bug reproduction
Steps
Create a module with a default
etc/view.xml
which contain more than one nestedvar
In the local
view.xml
, overwrite the default settings.Call
\Magento\Framework\View\Element\AbstractBlock::getVar
from anywhereExpect Result
This is awesome
Actual Result
Workaround
For the time being, a workaround can be applied while this PR or other relevant fix is waiting to merge. Add below fragment into any
di.xml