Commit graph

26 commits

Author SHA1 Message Date
Sam Reed
ccffe43a91 Add a couple of type hints noticed when poking bug 27673 2011-02-24 11:59:51 +00:00
Tim Starling
a20350dd31 * Rewrote StripState to not use ReplacementArray. The memory usage of FSS was excessive when there were many (>10k) strip items. I used preg_replace_callback(), which is slower than strtr() in the simplest case, but much faster than it when the markers have different lengths, which they usually do.
* It was not necessary to preserve the $stripState->general->setPair() interface since it wasn't used by any extensions.
* Moved StripState to its own file.
* Refactored serialiseHalfParsedText() and unserialiseHalfParsedText() so that the bulk of the functionality is in the relevant modules, instead of using scary direct access to object member variables. Made it support the new StripState. It seemed like a lot of work to go to to support an "emergency optimisation" feature in Cite. Cite updates will be in a subsequent commit.
* Fixed spelling of serialiseHalfParsedText() and unserialiseHalfParsedText(), there is unavoidable interface breakage anyway, due to cache object versioning. 
* Moved transparent tags to their own function, as requested in a fixme comment.
* Added documentation for markerSkipCallback().
* Removed OnlyIncludeReplacer, unused since MW 1.12.
2011-02-23 06:58:15 +00:00
Sam Reed
7d98280f3e More function and variable documentation 2011-02-19 01:02:56 +00:00
Platonides
6e7632e617 Allow to disable the preprocessor cache with $wgPreprocessorCacheThreshold = false 2011-01-13 17:35:54 +00:00
Platonides
e22cd590e0 Improve a preprocessor comment 2011-01-13 17:30:27 +00:00
Mark A. Hershberger
2e18112d60 Whitespace changes (before others) — “svn diff -x-w” shows no changes 2010-12-11 03:52:35 +00:00
Sam Reed
6b3b915353 Big attack on unused variables... 2010-10-14 20:53:04 +00:00
Platonides
52e275003a Code cleanup: unused globals, empty statements, typos... 2010-09-11 21:55:21 +00:00
Alexandre Emsenhuber
dc50e1a4bf * Added file description headers
* Added @file where needed
2010-08-22 14:31:05 +00:00
Sam Reed
380b6725d5 Remove some unused variables
Move variable in languages/classes/LanguageKu.php into commented code (used in comment)
2010-08-13 20:58:16 +00:00
Platonides
9c143c5900 Use ParserOptions accessors.
Only one direct usage remains, in ParserCache::getKey, which will be rewritten.
2010-08-05 19:01:47 +00:00
Sam Reed
f17a158fea Replace self with PPFrame to define proper location of some constants 2010-07-29 07:20:02 +00:00
Sam Reed
f4f5d17105 A few more wrong static things
Remove some =& from LanguageKk_cyrl
2010-07-25 21:15:27 +00:00
Conrad Irwin
91f6526cfd (bug 19910) Preprocess headings of the form "===+\s+" in the same way as Parser::doHeadings() 2010-06-21 20:33:07 +00:00
Daniel Kinzler
b9febe4161 added newPartNodeArray for creating a node with a list of parts form a php array; useful for programatically constructing template parameters 2010-06-10 15:16:15 +00:00
Alexandre Emsenhuber
1ec45bef2e Fixed some doxygen warnings 2010-06-09 14:57:59 +00:00
Tim Starling
4b13d6b07f Applied patch by Juliano F. Ravasi for bug 20431: constructor for PPCustomFrame_* failed to initialise the object properly. 2009-09-04 00:43:51 +00:00
Victor Vasiliev
1671616088 Add getArguments, getNamedArguments and getNumberedArguments methods to PPFrame
interface, so extensions can access them.
2009-07-02 16:21:30 +00:00
Andrew Garrett
252ef37028 Apply changes made live on Wikimedia cluster related to preprocessor caching to subversion. Patch worked on by Tim Starling and myself.
Changes from the original patch (r46936):
* Add versioning to the cache, so the cache can be purged.
* Only cache preprocessor output for input of over a certain amount (default of 1000 bytes).
2009-02-09 23:18:37 +00:00
Andrew Garrett
cc481275ef Cache preprocessor output in memcached. 2009-02-06 20:27:58 +00:00
Tim Starling
b45af1125c Added basic support for Wietse Venema's taint feature. Fixed a few instances of shoddy code that it turned up, no actual vulnerabilities yet. 2009-02-04 09:10:32 +00:00
Siebrand Mazeland
792172840a (bug 15737) Fix notices while expanding using PPCustomFrame. Patch by Juliano F. Ravasi.
In PPCustomFrame_DOM and PPCustomFrame_Hash, no checking is performed in getArgument() when arguments not contained in frames are requested, causing PHP undefined variable error messages. This happens while expanding templates using a custom frame.

A simple check is needed using isset(), just like those found in PPFrame_* and PPTemplateFrame_*.
2008-11-03 00:04:33 +00:00
Tim Starling
ba18678277 Fixed the expansion depth limit feature, broken by Brion in r32550. This may be the cause of the reported regressions when upgrading from 1.12 to 1.13 in the presence of certain extensions, e.g. http://mwusers.com/forums/showthread.php?t=8651 2008-10-23 14:40:10 +00:00
Daniel Friesen
1cfcc40329 Add 3 new functions to the PPTemplateFrames to allow extensions to efficiently extract the whole list of parameters (or only numbered or named) passed to the template they are nested inside of. 2008-08-09 06:08:54 +00:00
Daniel Kinzler
24d5e941a0 added PPCustomFrame classes to restore ability to use replaceVariables with a custom map of values. This should unbreak some extensions that were broken by the new PP stuff, like the News extension. 2008-06-26 13:05:40 +00:00
Tim Starling
c6b902f180 * Reorganised the includes directory, creating subdirectories db, parser and specials
* Wrote a tool to check the integrity of the autoloader class list, fixed some issues that came up.
* Start the autoloader before LocalSettings.php, so that when an extension writer thinks an inefficient one-file special page extension is the way to go, they don't have to use explicit includes to make the class inheritance work. Should continue to work with $IP set in LocalSettings.php as long as $IP is set before extensions are included.
2008-06-16 20:21:26 +00:00
Renamed from includes/Preprocessor_Hash.php (Browse further)