Page MenuHomePhabricator

Provide a DOM version of the ExtractBody OutputTransform
Closed, ResolvedPublic

Description

This is an individual task to split the parent task into smaller chunks. It may be declined if the expected performance improvement is not worth the expected investment.

Note that this requires additional care as we'd be moving from a whole document to a document containing only the body, and this is the only pass where we do that.

If we're implementing this task, it is worth considering passing a DOM document directly from Parsoid to this pass, without serializing to text in the middle.

Event Timeline

I've split up the ExtractBody pass into two and moved the relative attribute expansion code to a DOM pass further down in the pipeline. After this change, the ExtractBody pass itself is trivial and can stay a text transform.

Change #1200213 had a related patch set uploaded (by Subramanya Sastry; author: Subramanya Sastry):

[mediawiki/core@master] OutputTransformPipeline: Make ExpandRelativeAttrs its own DOM stage

https://gerrit.wikimedia.org/r/1200213

Change #1200213 merged by jenkins-bot:

[mediawiki/core@master] OutputTransformPipeline: Make ExpandRelativeAttrs its own DOM stage

https://gerrit.wikimedia.org/r/1200213

ssastry triaged this task as Medium priority.