In layout_plugin, we recently committed a change to LayoutBase::build($regions) to make it's implementation more closely match what the documented API of that method is, which is that it takes an array of render arrays keyed by region name. Previously, we were cheating a little and allowing $regions to be a render array whose properties got passed into the returned render array.
Here's the issue:
#2804093: LayoutBase should enforce the API by ignoring any render array keys at the top level
Unfortunately, it looks like DS was taking advantage of the old implementation, and a user reported that the change broke DS!
However, it's a pretty easy fix - we just have to explicitly merge the original render array with the render array returned from LayoutBase::build() and everything starts working again. :-) I'll upload a patch in a moment.
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | ds-layout-base-build-2808629-3.patch | 1.59 KB | dsnopek |
Comments
Comment #2
dsnopekPatch is attached!
Comment #3
dsnopekHere's a slightly more sophisticated version of that, which actually makes a
$regionsarray that is consistent with the API, rather than depending onLayoutBase::build()behavior of now enforcing the API. This is a little forward thinking for the eventual layouts that don't descend fromLayoutBase!Comment #5
aspilicious commented