List of steps to reproduce (step by step, including full links if applicable):
- Try and edit a page that uses templates (at least I think that's the requirement) with the visual editor
What happens?:
A popup reports a 500 error and it falls back to edit source. Hitting the underlying REST URL directly with exception reporting enabled results in:
rest.php/wiki.example.com/v3/page/html/New_features/26357?redirect=false&stash=true Exception: Serialization of 'Wikimedia\Parsoid\DOM\Compat\Element' is not allowed Backtrace: from /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Utils/Utils.php(87) #0 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Utils/Utils.php(87): serialize() #1 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/PP/Processors/WrapTemplates.php(916): Wikimedia\Parsoid\Utils\Utils::clone() #2 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/PP/Processors/WrapTemplates.php(1236): Wikimedia\Parsoid\Wt2Html\PP\Processors\WrapTemplates::encapsulateTemplates() #3 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/PP/Processors/WrapTemplates.php(1249): Wikimedia\Parsoid\Wt2Html\PP\Processors\WrapTemplates::wrapTemplatesInTree() #4 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(159): Wikimedia\Parsoid\Wt2Html\PP\Processors\WrapTemplates->run() #5 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(937): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->Wikimedia\Parsoid\Wt2Html\{closure}() #6 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(987): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->doPostProcess() #7 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/DOMPostProcessor.php(1004): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->process() #8 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/ParserPipeline.php(178): Wikimedia\Parsoid\Wt2Html\DOMPostProcessor->processChunkily() #9 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Wt2Html/ParserPipelineFactory.php(307): Wikimedia\Parsoid\Wt2Html\ParserPipeline->parseChunkily() #10 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Core/WikitextContentModelHandler.php(106): Wikimedia\Parsoid\Wt2Html\ParserPipelineFactory->parse() #11 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Parsoid.php(166): Wikimedia\Parsoid\Core\WikitextContentModelHandler->toDOM() #12 /srv/wiki.example.com/vendor/wikimedia/parsoid/src/Parsoid.php(198): Wikimedia\Parsoid\Parsoid->parseWikitext() #13 /srv/wiki.example.com/extensions/VisualEditor/includes/VEParsoid/src/Rest/Handler/ParsoidHandler.php(590): Wikimedia\Parsoid\Parsoid->wikitext2html() #14 /srv/wiki.example.com/extensions/VisualEditor/includes/VEParsoid/src/Rest/Handler/PageHandler.php(90): VEParsoid\Rest\Handler\ParsoidHandler->wt2html() #15 /srv/wiki.example.com/includes/Rest/Router.php(403): VEParsoid\Rest\Handler\PageHandler->execute() #16 /srv/wiki.example.com/includes/Rest/Router.php(330): MediaWiki\Rest\Router->executeHandler() #17 /srv/wiki.example.com/includes/Rest/EntryPoint.php(165): MediaWiki\Rest\Router->execute() #18 /srv/wiki.example.com/includes/Rest/EntryPoint.php(130): MediaWiki\Rest\EntryPoint->execute() #19 /srv/wiki.example.com/rest.php(31): MediaWiki\Rest\EntryPoint::main() #20 {main}
What should have happened instead?:
The visual editor should have opened.
Software version (if not a Wikimedia wiki), browser information, screenshots, other information, etc.:
Mediawiki 1.37.2
PHP 8.1.5