Based on initial testing ( See T234697#5556685 ), I found a bunch of diffs.
Of these, the following just need to be normalized away
- JS code emitting, null,null in DSR in some cases and PHP code sometimes having ,0,0 in some cases and related diffs -- currently normalized by the test script to hide these diffs (See T231570)
- data-mw template params sorted differently in JS & PHP
- Any attributes that are generated and aren't deterministic (certain title tags generated by extensions / templates, about ids in Parsoid which are currently normalized away)
- On a wikivoyage page test, PHP output fixes a problem compared to JS for <maplink>. Parsoid/JS emitted ?'"UNIQ--maplink-00000000-QINU"'? whereas Parsoid/PHP emits a <maplink> tag. So, nothing to fix here, but we may want to normalize this away to treat this as an acceptable diff ( <div class="magnify" title="Enlarge map"> is the wrapper that needs to be stripped out.)
The following need to be addressed in some form.
- <head> diffs - addressed by https://gerrit.wikimedia.org/r/c/mediawiki/services/parsoid/+/521320 -- blocked on review
- <body> missing lang=".." attribute. Blocked on language variant code being complete -- blocked on @cscott finishing up language variant code
- <video> source tags use https in Parsoid/JS and http in Parsoid/PHP. @cscott is handling this
- {{DEFAULTSORT:....}} renders as a <meta> tag in Parsoid/JS and <span typeof="mw:Transclusion ..> in Parsoid/PHP (See T235004)
None of these seem big, but need to be addressed. Will file individual tasks for each instance.