These methods need to move to new corresponding methods in ContentHandler. [[ https://gerrit.wikimedia.org/r/c/mediawiki/core/+/705780 | Here's a patch ]] that does the first part of the work for Content::preSaveTransform.
The signature of the ContentHandler method should be:
- ContentHandler::getParserOutput( Content, PageReference, ?int, ParserOptions, bool ) // TODO: discuss if generateHtml should be a new parser option
- ContentHandler::fillParserOutput( Content, PageReference, ?int, ParserOptions, bool, ParserOutput ).
- Move implementation of TextContent::getHtml to TextContentHandler::fillParserOutput ( The same with override classes ).
The process:
[x] Do the same as in the referenced patch for all the methods.
[] In all extensions where Content overriding classes override the method getParserOutput - override the ContentHandler::fillParserOutput instead
[x] Wikibase (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Wikibase/+/725324 | Patch ]]
[] BlueSpiceSocialProfile -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/BlueSpiceSocialProfile/+/726636 | Patch ]] [[ https://phabricator.wikimedia.org/T292560 | Ticket ]]
[] BlueSpiceSocialTopics -> [[ https://phabricator.wikimedia.org/T292988 | Ticket ]]
[x] EventLogging (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/EventLogging/+/719995 | Patch ]]
[x] examples -> [[ https://phabricator.wikimedia.org/T292987 | Ticket ]] [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/examples/+/732727 | Patch ]]
[x] Flow (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Flow/+/720026 | Patch ]]
[x] ProofreadPage (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/ProofreadPage/+/720291 | Patch ]]
[x] TemplateStyles (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/TemplateStyles/+/726874 | Patch ]]
[x] UploadWizard (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/UploadWizard/+/726881 | Patch ]]
[] In all extensions where AbstractContent overriding classes override the method fillParserOutput - override the ContentHandler method instead
[] CollaborationKit -> [[ https://phabricator.wikimedia.org/T292989 | Ticket ]]
[x] ProofreadPage (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/ProofreadPage/+/720291 | Patch ]]
[x] THICC -> [[ https://phabricator.wikimedia.org/T292990 | Ticket ]]
[] BlueSpiceBookshelf -> [[ https://phabricator.wikimedia.org/T292993 | Ticket ]]
[] BlueSpiceFoundation -> [[ https://phabricator.wikimedia.org/T292994 | Ticket ]]
[] BlueSpiceSocial -> [[ https://phabricator.wikimedia.org/T292996 | Ticket ]]
[] BlueSpiceSocialProfile -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/BlueSpiceSocialProfile/+/726636 | Patch ]] [[ https://phabricator.wikimedia.org/T292560 | Ticket ]]
[] BlueSpiceSocialTopics -> [[ https://phabricator.wikimedia.org/T292988 | Ticket ]]
[x] EntitySchema (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/EntitySchema/+/726925 | Patch ]]
[] FileAnnotations -> [[ https://phabricator.wikimedia.org/T292997 | Ticket ]]
[x] Gadgets (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Gadgets/+/727230 | Patch ]]
[x] JsonConfig (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/JsonConfig/+/727252 | Patch ]]
[x] MassMessage (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MassMessage/+/727332 | Patch ]]
[] MediaUploader -> [[ https://phabricator.wikimedia.org/T292998 | Ticket ]]
[x] Newsletter (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Newsletter/+/728319 | Patch ]]
[] NotebookViewer -> [[ https://phabricator.wikimedia.org/T292999 | Ticket ]]
[x] Scribunto (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Scribunto/+/728329 | Patch ]]
[] StructuredNavigation -> [[ https://phabricator.wikimedia.org/T293000 | Ticket ]]
[] TEI -> [[ https://phabricator.wikimedia.org/T293001 | Ticket ]]
[] WikiLambda -> [[ https://phabricator.wikimedia.org/T293002 | Ticket ]]
[] Wikistories -> [[ https://phabricator.wikimedia.org/T293003 | Ticket ]]
[] Replace all callers. Use ContentRenderer to obtain a ContentHandler, not the Content::getContentHandler method
[x] core -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/core/+/730808 | Patch ]]
[x] Wikibase (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Wikibase/+/725324 | Patch ]]
[x] FlaggedRevs (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/FlaggedRevs/+/732275 | Patch ]]
[x] TemplateSandbox (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/TemplateSandbox/+/732292 | Patch ]]
[x] FileImporter (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/FileImporter/+/732301 | Patch ]]
[x] Flow (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Flow/+/732305 | Patch ]]
[x] MassMessage (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MassMessage/+/732308 | Patch ]]
[x] SpamBlacklist (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/SpamBlacklist/+/732312 | Patch ]]
[x] PageImages (deployed) -> [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageImages/+/732721 | Patch ]]
[] SemanticMediaWiki -> [[ https://phabricator.wikimedia.org/T293990 | Ticket ]]
[] BlueSpiceSocialProfile -> [[ https://phabricator.wikimedia.org/T292560 | Ticket ]]
[] BlueSpiceSocialTopics -> [[ https://phabricator.wikimedia.org/T292988 | Ticket ]]
[] CognitiveProcessDesigner -> [[ https://phabricator.wikimedia.org/T293991 | Ticket ]]
[] ApprovedRevs -> [[ https://phabricator.wikimedia.org/T293992 | Ticket ]]
[] BlueSpiceDashboards -> [[ https://phabricator.wikimedia.org/T293993 | Ticket ]]
[] BlueSpiceEchoConnector -> [[ https://phabricator.wikimedia.org/T293994 | Ticket ]]
[] BlueSpiceExtendedSearch -> [[ https://phabricator.wikimedia.org/T293995 | Ticket ]]
[] BlueSpiceFoundation -> [[ https://phabricator.wikimedia.org/T292994 | Ticket ]]
[] BlueSpiceSMWConnector -> [[ https://phabricator.wikimedia.org/T293997 | Ticket ]]
[] BlueSpiceSocialWikiPage -> [[ https://phabricator.wikimedia.org/T293998 | Ticket ]]
[] CollaborationKit -> [[ https://phabricator.wikimedia.org/T292989 | Ticket ]]
[] ContentTransfer -> [[ https://phabricator.wikimedia.org/T293999 | Ticket ]]
[] DisplayTitle -> [[ https://phabricator.wikimedia.org/T294000 | Ticket ]]
[] DocBookExport -> [[ https://phabricator.wikimedia.org/T294002 | Ticket ]]
[] ParserMigration -> [[ https://phabricator.wikimedia.org/T294003 | Ticket ]]
[] Once all callers and overrides in extensions is done, do some hard deprecations.