mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-25 14:56:20 +00:00
06ae53fdfe
Only call back a few callbacks per reactor iteration from the template fetch request queue. This changes the expansion pattern from a (memory intensive) breadth-first expansion to something quite close to depth-first expansion. Additionally, retrieved pages are quickly added to the page cache so that a lot of request queuing is avoided in favor of synchronous expansion from the cache. On pages like Barack Obama that previously ran out of memory after consuming node's 1.6G heap limit, expansion now runs in relatively constant 100-300M resident (so far, still running). Change-Id: Ie34a1eeff00d868416de45ef8d289898258f560c |
||
---|---|---|
.. | ||
html5 | ||
ext.Cite.js | ||
ext.cite.taghook.ref.js | ||
ext.core.AttributeExpander.js | ||
ext.core.BehaviorSwitchHandler.js | ||
ext.core.LinkHandler.js | ||
ext.core.NoIncludeOnly.js | ||
ext.core.ParserFunctions.js | ||
ext.core.PostExpandParagraphHandler.js | ||
ext.core.QuoteTransformer.js | ||
ext.core.Sanitizer.js | ||
ext.core.TemplateHandler.js | ||
ext.Util.js | ||
ext.util.TokenCollector.js | ||
mediawiki.DOMConverter.js | ||
mediawiki.DOMPostProcessor.js | ||
mediawiki.HTML5TreeBuilder.node.js | ||
mediawiki.LinearModelConverter.js | ||
mediawiki.parser.defines.js | ||
mediawiki.parser.environment.js | ||
mediawiki.parser.js | ||
mediawiki.Title.js | ||
mediawiki.tokenizer.peg.js | ||
mediawiki.TokenTransformManager.js | ||
package.json | ||
parse.js | ||
pegTokenizer.pegjs.txt | ||
README.txt |
A combined Mediawiki and html parser in JavaScript running on node.js. Please see (https://www.mediawiki.org/wiki/Future/Parser_development) for an overview of the current implementation, and instructions on running the tests. You might need to set the NODE_PATH environment variable, export NODE_PATH="node_modules" Download the dependencies: npm install Run tests: npm test