Earl has done some awesome work to support addressable content (a string that encapsulates the necessary context to render a pane or other item) in CTools and Panels recently. Panelizer currently supports addressable content and there's some (admittedly untested) work already present in Panels proper. Using this information will allow us to do Panels ESI in a much simpler way without needing to add as much functionality to figure out $pane->id and $display->id.
I have a sandbox at http://drupal.org/sandbox/smerrill/1508550 which contains the first working version of integration with addressable content (and thus ESI for Panelized entities today.) It still definitely needs some work - for one, some of my old code from my old sandbox is in still in the Panels cache provider, and additionally, I have ripped out some of the old detection code but not all of it.)
I have two main questions:
- Manarth, how many folks currently use ESI 7.x-3.x, and specifially do you know if many use it for Panels? Basically, Do we need to worry about providing backwards compatibility with the existing Pane ID / Display ID detection?
- Earl, since addressable content is now in present in some form in both Panels and Panelizer, do you see any reason that we shouldn't go down this path?
If we decide that yes, addressable content is The Future, I will continue ripping out the old code as much as possible and get us a patch post haste.