Recently, more bugs with dynamic sections resurfaced. Here is the current situation:
* We mangle HTML in beta and alpha, removing all sections but 0 and relying on JS to provide the rest. * The former approach does not work with non-JS user-agents and when JS is disabled or simply didn't get loaded (we're on mobile after all). * Pure-HTML fallback with links to separate sections doesn't sound promising due to performance concerns. ** Because there's no sane way to purge the cached sections. ** And because we'll have to either spend more CPU time on every mobile section view than on whole desktop view OR cache aggressively and compete with parser cache, thus reducing overall cluster performance anyway.
This is very broken and because there's no chance that it will be moved into core in its present state it fails the beta inclusion criteria (for final testing of features that will soon be exposed to everyone).
Therefore, I propose to do away with it and if we still want dynamic section views in the foreseeable future, use plan B that I proposed before: * Leave HTML as it is. * Load subsequent pages dynamically. ** While the first page load may seem much heavier than just section 0 + section headings, due to the amount of JS we serve, the percentage of bandwidth saved by stripping sections is reasonably low except for a few really huge pages. ** Subsequent page views work as before. ** All fallbacks work magically. ** Implementation is straightforward and requires much less work to make it production-quality. ** No performance bells ringing.