Commit graph

39 commits

Author SHA1 Message Date
Sam Reed
912b95a104 More documentation tweaks/additions 2011-05-26 20:26:51 +00:00
Sam Reed
ebef5e723b More documentation tweaks/additions 2011-05-26 19:52:56 +00:00
Mark A. Hershberger
1cc7a162c0 Updated patch from Bergi re: r86676 with tested code to fix bug #28642 2011-04-22 14:25:17 +00:00
Mark A. Hershberger
bf2ae270b5 Fix bug #28642 - wrong part->commentEnd set to abbutting comments
To be able to search for headline-closing equal sign even when
    there are comments between the last = and the linebreak, there are
    some position values appended to the recent domParts. This works
    well with the first comment, but as soon as a second one comes,
    the commentEnd value is set to $wsEnd instead of $endPos.

Patch from Bergi
2011-04-21 22:20:48 +00:00
Leo Koppelkamm
b4ec34def9 Followup to r86064 (List with double line-breaks inside tables). Also contains patch for Bug 16700 by Mormegil (Additional linebreak though nested templates). Parsertests for both 2011-04-14 19:28:45 +00:00
Tim Starling
7440e684a9 HipHop fixes:
* Fixed preg_replace /e usage in Sanitizer and UserMailer. This was already against policy.
* Removed the __get()-based lazy initialisation of $this->xpath in PPNode_DOM. This caused a notice in HipHop, and is also inefficient due to the need for dynamic properties.
* Fixed the assertion in PPNode_DOM::splitHeading(), flagged by Inez Korczynski. It was obviously completely broken, converting a non-existent property to boolean, and it only appeared to work in Zend by accident.
2011-04-05 04:43:54 +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
Mark A. Hershberger
b4cee86beb w/s fixups 2011-02-12 04:06:22 +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
Sam Reed
0c59a5f824 Followup r79709, re-add equals
Removed due to previous CR, that had not had any response to, so presumed right
2011-01-06 15:27:49 +00:00
Sam Reed
5c94145e33 Fixup fixme on r67819 2011-01-06 03:24:35 +00:00
Sam Reed
c15c1c6abb More reversion of r77297, 2 of 2 commits to keep it readable in CR (hopefully) 2010-11-25 22:24:28 +00:00
Antoine Musso
6fe29c9c30 revert r76464
* mixed style changes and variable removing
* logic changes
* useful comments removed
2010-11-25 20:01:34 +00:00
Sam Reed
10ecfeb03b Various unused variables, add some braces
Explicitally define some variables used in hook type calls
2010-11-10 19:49:04 +00:00
Sam Reed
6b3b915353 Big attack on unused variables... 2010-10-14 20:53:04 +00:00
Alexandre Emsenhuber
dc50e1a4bf * Added file description headers
* Added @file where needed
2010-08-22 14:31:05 +00:00
Platonides
303dd1cab2 Revert the change to Preprocessor_DOM.php of r71286.
The parsertest "Link with 3 brackets" passes again.
2010-08-20 18:03:45 +00:00
Sam Reed
721ecb6d2d Remove some more unused variables
Remove srvus() from Parser, unused, and calling testSrvus wrongly
2010-08-19 11:21:14 +00:00
Sam Reed
55d5a6c9a2 Fix fixme placed on r30022 by me (fixing per comment)
Adding a few braces too
2010-08-10 12:55:22 +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
1258dc3268 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:02:25 +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
Chad Horohoe
42fe290d16 (bug 20274) Strict standards issue in 5.3. 2009-08-16 20:56:48 +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
Aaron Schulz
abb4c5c516 fix profiling 2009-03-06 00:20:44 +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
Aaron Schulz
4cdee685b9 add profile calls 2008-08-18 07:59:37 +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_DOM.php (Browse further)