Hello everyone,
As part of the effort to align Parsoid's output with the output of the
legacy parser [1], we're introducing a backwards incompatible change [2] in
the next Parsoid version (0.17.0-a7, to be deployed along with
1.40.0-wmf.12).
This new version modifies the target of the link to add "action=edit" and
"redlink=1" to redlinks (wikilinks that point to a non-existing page).
We missed that this could have an impact on Parsoid clients, but this was
caught by DiscussionTools [3]. Accordingly, we updated the Parsoid HTML
Specification to explicitly add red links to the specification [4][5].
Parsoid clients that rely on wikilink targets should check for URL
parameters and treat them accordingly.
As an advance notice, we will also eventually modify the "title" attribute
of redlinks to add localized information about this state, as is the case
in the legacy parser [1]. Please let us know of any input you may have on
this topic by adding a comment on the corresponding Phabricator ticket so
that we can discuss options [1].
Best regards,
Isabelle, for the Content Transform Team.
[1]
https://phabricator.wikimedia.org/T309024
[2]
https://gerrit.wikimedia.org/r/c/mediawiki/services/parsoid/+/816137/
[3]
https://phabricator.wikimedia.org/T324028
[4]
https://www.mediawiki.org/wiki/Specs/HTML/2.6.0
[5] This would technically have required a major bump in the specification
version. Since we don't have a well-tested implementation for content
negotiation and the RESTBase sunsetting work is in progress [6], bumping
major versions wasn't an option. We overlooked bumping a minor version as a
signal, because we assumed we had it covered in 2.6.0.
[6]
https://phabricator.wikimedia.org/T262315
--
*Isabelle Hurbain-Palatin* (she/her)
Senior Software Engineer
Wikimedia Foundation <https://wikimediafoundation.org/>