Ori Livneh [Fri, 3 Apr 2015 18:26:20 +0000 (18:26 +0000)]
Merge "PHPCS lint fixes"
Ori Livneh [Fri, 3 Apr 2015 18:07:39 +0000 (11:07 -0700)]
PHPCS lint fixes
Change-Id: I16288db03f34439bdb16940a86720d2511f46467
Translation updater bot [Fri, 3 Apr 2015 18:02:47 +0000 (20:02 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I94574a6af0fbcc11b1ec6e7fc6adee2650bf2224
jenkins-bot [Fri, 3 Apr 2015 16:50:20 +0000 (16:50 +0000)]
Merge "Made rollbackMasterChanges catch exceptions, throwing the last one"
Aaron Schulz [Thu, 2 Apr 2015 19:33:30 +0000 (12:33 -0700)]
Made rollbackMasterChanges catch exceptions, throwing the last one
Change-Id: Ida36a302b35434d1af464cb77a0084ec441d038a
jenkins-bot [Fri, 3 Apr 2015 16:10:44 +0000 (16:10 +0000)]
Merge "Add namespaces for Western Balochi (bgn) from translatewiki"
jenkins-bot [Fri, 3 Apr 2015 16:05:20 +0000 (16:05 +0000)]
Merge "Add special pages aliases for Luri (lrc) from translatewiki"
Gilles Dubuc [Thu, 2 Apr 2015 09:53:12 +0000 (11:53 +0200)]
Better file size limit message display logic
Only display upload size limit differentiation message
if there are 2 upload methods.
Bug: T94727
Change-Id: I23c5a5c5e7a30484c242005db831eec5c8c1f4a7
Gilles Dubuc [Fri, 3 Apr 2015 12:11:26 +0000 (14:11 +0200)]
Skin: Account for User::newFromName returning false
Follows-up
e41f5a07f893cf.
Bug: T92357
Change-Id: I00edfaed92af7d16894453f28999bfce2de2e37a
Aaron Schulz [Fri, 3 Apr 2015 09:48:42 +0000 (02:48 -0700)]
Made Skin::getRelevantUser use READ_NORMAL
Bug: T92357
Change-Id: I5089c99ae3a21bb8d41d488d18dd63fe1eaefea9
jenkins-bot [Fri, 3 Apr 2015 09:24:53 +0000 (09:24 +0000)]
Merge "Removed BloomFilter classes"
Aaron Schulz [Fri, 3 Apr 2015 08:28:08 +0000 (01:28 -0700)]
Removed BloomFilter classes
* This ends up being more complex than its worth
and even more so for multi-DC support
Bug: T93006
Change-Id: Iaa774fe69061e42955b11dc82d30dba93208e606
Kunal Mehta [Thu, 2 Apr 2015 17:31:24 +0000 (10:31 -0700)]
SkinFallback: Recommend using wfLoadSkin() if possible
Change-Id: I4f3841029578305ab692d853c45678f487adbc78
Matthew Flaschen [Fri, 3 Apr 2015 02:53:57 +0000 (22:53 -0400)]
Have back-compat shim actually return the value
Bug: T94958
Change-Id: I75fbd11c8bb357b83079402592e8863acef18fb1
jenkins-bot [Fri, 3 Apr 2015 00:57:51 +0000 (00:57 +0000)]
Merge "Fixed class name typo in docs"
Aaron Schulz [Fri, 3 Apr 2015 00:42:41 +0000 (17:42 -0700)]
Fixed class name typo in docs
Change-Id: Ifc73af824b31fc2f709b777397896f605fe6dfff
jenkins-bot [Thu, 2 Apr 2015 23:41:12 +0000 (23:41 +0000)]
Merge "Check return value of preg_match in Sanitizer.php"
jenkins-bot [Thu, 2 Apr 2015 23:41:06 +0000 (23:41 +0000)]
Merge "Add checks to try to catch T92046"
mjbmr [Thu, 2 Apr 2015 23:01:20 +0000 (23:01 +0000)]
Add namespaces for Western Balochi (bgn) from translatewiki
Change-Id: I87e2842b3d204098768fb265b5e2f7bf715d918b
jenkins-bot [Thu, 2 Apr 2015 22:37:52 +0000 (22:37 +0000)]
Merge "languages: Backtick "<em>" since it's meant as code instead of mark up"
jenkins-bot [Thu, 2 Apr 2015 22:29:12 +0000 (22:29 +0000)]
Merge "Doxyfile: Suppress warnings for phpunit "@" annotations"
jenkins-bot [Thu, 2 Apr 2015 22:29:09 +0000 (22:29 +0000)]
Merge "Doxyfile: Suppress warnings for invalid @codingStandardsIgnoreStart"
jenkins-bot [Thu, 2 Apr 2015 22:29:05 +0000 (22:29 +0000)]
Merge "mwdocgen: Exclude node_modules from Doxygen"
jenkins-bot [Thu, 2 Apr 2015 22:29:02 +0000 (22:29 +0000)]
Merge "DefaultSettings: Fix doxygen warning for missing @endcond"
jenkins-bot [Thu, 2 Apr 2015 21:20:54 +0000 (21:20 +0000)]
Merge "Use structured logging/MWLoggerFactory for TransactionProfiler"
jenkins-bot [Thu, 2 Apr 2015 21:16:37 +0000 (21:16 +0000)]
Merge "Don't trigger MessageBlobStore during tests"
mjbmr [Thu, 2 Apr 2015 20:00:16 +0000 (20:00 +0000)]
Add special pages aliases for Luri (lrc) from translatewiki
Change-Id: I134b75f95e4d5aab6cf40e493c144de41806b47e
Timo Tijhof [Wed, 1 Apr 2015 00:11:18 +0000 (01:11 +0100)]
languages: Backtick "<em>" since it's meant as code instead of mark up
For unknown things like <site> and <nowiki> it defaults to text,
but (like wikitext) it does support certain tags such as <em>.
Change-Id: Ib7bead3cb72fd7c361c8032bfc3069da970226bc
Timo Tijhof [Tue, 31 Mar 2015 23:48:04 +0000 (00:48 +0100)]
LogFormatter: Indent code to fix Doxygen parse error
This file was not being indexed due to a parse error.
> /includes/logging/LogFormatter.php:844:
> warning: Reached end of file while still inside a (nested) comment.
> Nesting level 2 (probable line reference: 48, 26)
Change-Id: Ie34ae644d06e705991b934d4389e8c41bb7f77a7
jenkins-bot [Thu, 2 Apr 2015 18:34:50 +0000 (18:34 +0000)]
Merge "Added read-only checks around User::saveSettings where they belong"
Translation updater bot [Thu, 2 Apr 2015 18:32:41 +0000 (18:32 +0000)]
Merge "Localisation updates from https://translatewiki.net."
Translation updater bot [Thu, 2 Apr 2015 18:28:33 +0000 (20:28 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Iabff7129bf55c58ec92f46dd34457093409087f2
jenkins-bot [Thu, 2 Apr 2015 18:22:44 +0000 (18:22 +0000)]
Merge "Simplify profiler output class selection"
Aaron Schulz [Mon, 30 Mar 2015 19:00:07 +0000 (12:00 -0700)]
Added read-only checks around User::saveSettings where they belong
* Ideally saveSettings() would not just silently do nothing in
read-only mode as not all callers expect that behavior. This
change is just the first step.
Change-Id: Ieeaf531dac3027ddba89c60159b98f9c04de78d3
Ori Livneh [Thu, 2 Apr 2015 17:46:57 +0000 (10:46 -0700)]
Simplify profiler output class selection
Instead of maintaining a mapping of short names to class names ('db' =>
'ProfilerOutputDb', etc.), let us adopt the convention of using the full
class name to indicate the output type. We can maintain backward-compatibility
by using simple string manipulation to transform short names to the full class
names.
Change-Id: I976e0da2873d88b9892fb41823cfe3af0a2d3974
umherirrender [Sat, 21 Feb 2015 09:37:31 +0000 (10:37 +0100)]
Check return value of preg_match in Sanitizer.php
preg_match returns bool to indicate if $regs contains content, check
that before using the array.
Bug: T75487
Change-Id: Idca50feb170e35ca25e9874674f5a4091748052a
Max Semenik [Wed, 1 Apr 2015 00:13:47 +0000 (17:13 -0700)]
Minor cleanups
* Declare undeclared variables
* Kill unused variables
* Fix comments including PHPDoc
Change-Id: I60015f6b6740aa9088bda3745f4dc4e65e29fcb1
Kunal Mehta [Sun, 29 Mar 2015 08:41:38 +0000 (01:41 -0700)]
Don't require database access in ApiMainTest
It's still slow though because ApiTestCase does expensive things in
setUp(), but nothing in these tests need database access anymore.
Change-Id: Iaf431cc62fe23154c42967e6391c533fe1c5346e
jenkins-bot [Thu, 2 Apr 2015 15:30:07 +0000 (15:30 +0000)]
Merge "Remove redundant NS_MAIN from translations"
jenkins-bot [Thu, 2 Apr 2015 14:17:54 +0000 (14:17 +0000)]
Merge "Change labels of paging links in Category page"
jenkins-bot [Thu, 2 Apr 2015 13:25:28 +0000 (13:25 +0000)]
Merge "Message: Clean up unit tests and improve code coverage"
Timo Tijhof [Thu, 2 Apr 2015 07:01:38 +0000 (08:01 +0100)]
Message: Clean up unit tests and improve code coverage
* Remove unnecessary use of ReflectionClass. It was testing
internal properties that aren't part of the API. Using the
getters instead.
* Remove need for func_get_args that was making the test more
complex and the data provider hard to read. Simply maintain
it as array of expected params and array of variadic arguments.
* Rename tests to more closely match tested methods.
* Rename data providers to provide*, and make them static.
* Reorder tests to more closely match logical order of the class.
* Improve line coverage from 31% to 67%.
Also:
* Remove testParams (dupes testConstructorParams).
* Add tests for RawMessage class.
* Add tests for transformation and parsing.
* Add tests for wfMessage().
* Add tests for Message::newFrom*.
* Add tests for "$*" replacement.
* Add tests for __toString.
Change-Id: I2b183a66f9e9f51bd800088e174b1ae4d3284d8d
Timo Tijhof [Thu, 2 Apr 2015 01:15:50 +0000 (02:15 +0100)]
User: Add unit tests for getId, isAnon and isLoggedIn
Change-Id: Ie007d9da47df871f99ca19c4d7364f46f71c255b
Ori Livneh [Thu, 2 Apr 2015 04:09:20 +0000 (21:09 -0700)]
Follow-up to Icf644ad34: Introduce ProfilerOutputStats
Change-Id: Ib3585303b75899c4cd7c9c88fb3473b441e52c23
Ori Livneh [Wed, 1 Apr 2015 23:30:16 +0000 (16:30 -0700)]
Introduce ProfilerOutputStats
* Associate Profiler objects with a request context by adding a $context
property with a getter and a setter.
* Introduce ProfilerOutputStats, which writes profiling data to the stats
buffer associated with the current request context.
* Make it the Profiler class's responsibility to enforce $wgProfilerLimit.
* Deprecate $wgProfilerLimit in favor of the (more aptly named, IMO)
$wgProfiler['threshold'] config setting.
* Tidy up Profiler instance creation code in Profiler::instance().
* Add Profiler::getOutputs, which returns an array of ProfilerOutput instances
which are configured for the current profiler and whose canUse() method
returns true.
* Make ProfilerStub not log by creating a stub ProfilerStub::logData() method
which does not call the parent. Previously the parent class checked if $this
was an instance of ProfilerStub and returned early if so.
Task: T90623
Task: T85641
Change-Id: Icf644ad3435c1f30d0a49957a97b481808a3153d
Ori Livneh [Wed, 1 Apr 2015 23:16:09 +0000 (16:16 -0700)]
Make WebRequest objects time-aware
* Deprecate $wgRequestTime in favor of $_SERVER['REQUEST_TIME_FLOAT'], which is
more accurate. Because $_SERVER['REQUEST_TIME_FLOAT'] is only set for PHP
5.4+, set it to microtime( true ) in WebStart.php for back-compatibility.
* Add a 'requestTime' property to WebRequest objects, set to
$_SERVER['REQUEST_TIME_FLOAT'] for WebRequest or the instance creation time
for FauxRequest instances.
* Use that to provide WebRequest::getElapsedTime(), which gets the time since
the request was initiated.
* In wfLogProfilingData(), get the user and request objects from the context
object rather than from global scope.
Opportunistic clean-up: move the magic quotes check to WebStart.php and make
the error message more helpful.
Change-Id: I7e07e22eaf16b5141b80ad9f843285c542a127b7
jenkins-bot [Wed, 1 Apr 2015 22:27:33 +0000 (22:27 +0000)]
Merge "tests: Clean up file headers"
jenkins-bot [Wed, 1 Apr 2015 22:27:27 +0000 (22:27 +0000)]
Merge "installer: Use wfLoadExtension/Skin in LocalSettingsGenerator"
jenkins-bot [Wed, 1 Apr 2015 20:48:50 +0000 (20:48 +0000)]
Merge "Sync up with Parsoid parserTests."
jenkins-bot [Wed, 1 Apr 2015 20:18:28 +0000 (20:18 +0000)]
Merge "ResourceLoaderImageModule: Remove stupid TODO"
Subramanya Sastry [Wed, 1 Apr 2015 20:07:44 +0000 (15:07 -0500)]
Sync up with Parsoid parserTests.
This now aligns with Parsoid commit
ea9c04956577c35ec15609a966bf5a4d5541ab45
Change-Id: I310a0c652eb41a9845cfaa3c90262762b6ee4cc8
jenkins-bot [Wed, 1 Apr 2015 19:46:19 +0000 (19:46 +0000)]
Merge "Make all QUnit tests pass for languages other than English"
Translation updater bot [Wed, 1 Apr 2015 19:37:35 +0000 (19:37 +0000)]
Merge "Localisation updates from https://translatewiki.net."
Bartosz Dziewoński [Wed, 1 Apr 2015 19:35:43 +0000 (21:35 +0200)]
ResourceLoaderImageModule: Remove stupid TODO
Change-Id: I36ade1713b593504a34b1ec92bc4d9e536aa262a
Schnark [Tue, 24 Mar 2015 10:33:47 +0000 (10:33 +0000)]
Make all QUnit tests pass for languages other than English
Some tablesorter tests were failing for a content language different from
English, and the test for two functions from mw.language for a different
UI language.
This patch provides a mocked environment for all these tests, simulating
English language.
Bug: T59776
Change-Id: Ibfc83c34a896dc5fb5e892fb0ffd60e618880781
Translation updater bot [Wed, 1 Apr 2015 19:31:59 +0000 (21:31 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I32d1c7cf05c4981322f4111c8d997f08b79b05bf
Bartosz Dziewoński [Mon, 30 Mar 2015 17:27:31 +0000 (19:27 +0200)]
ResourceLoaderImageModule: Remove bogus CSSJanus call
We explicitly do not want to use CSSJanus flipping here, as
ResourceLoaderImage has a separate and more sophisticated mechanism
for choosing the right image for given language. This was a no-op,
since there were no flippable paths in the output at this point.
Change-Id: Ieff5f21653504a28afe3d4c110a52d8b06fc6a07
jenkins-bot [Wed, 1 Apr 2015 19:05:30 +0000 (19:05 +0000)]
Merge "Use "string|false" as @return instead of "string|bool" where appropiate"
Bartosz Dziewoński [Wed, 1 Apr 2015 17:45:26 +0000 (19:45 +0200)]
Resources.php: Remove duplicate copy of 'oojs-ui.styles' module
derp
Change-Id: Id7cd440888818e387f5cae68a5a63d73d3e11876
jenkins-bot [Wed, 1 Apr 2015 17:40:17 +0000 (17:40 +0000)]
Merge "SECURITY: Don't allow entities in XMP with HHVM"
jenkins-bot [Wed, 1 Apr 2015 17:40:13 +0000 (17:40 +0000)]
Merge "SECURITY: Don't allow directly calling Xml::isWellFormed"
jenkins-bot [Wed, 1 Apr 2015 17:40:10 +0000 (17:40 +0000)]
Merge "SECURITY: Always expand xml entities when checking SVG's"
jenkins-bot [Wed, 1 Apr 2015 17:32:01 +0000 (17:32 +0000)]
Merge "SECURITY: Escape > in Html::expandAttributes"
jenkins-bot [Wed, 1 Apr 2015 17:31:57 +0000 (17:31 +0000)]
Merge "SECURITY: Don't execute another user's CSS or JS on preview"
jenkins-bot [Wed, 1 Apr 2015 17:31:54 +0000 (17:31 +0000)]
Merge "SECURITY: Set maximal password length for DoS"
jenkins-bot [Wed, 1 Apr 2015 17:18:23 +0000 (17:18 +0000)]
Merge "OutputPage: Tiny tweak to jQuery.ready inline script"
Ori Livneh [Wed, 1 Apr 2015 08:48:29 +0000 (01:48 -0700)]
OutputPage: Tiny tweak to jQuery.ready inline script
Changing 'window.jQuery && jQuery.ready()' to 'if ( window.jQuery )
jQuery.ready()' means no *<![CDATA[*/ /*]]>* is required (because we
got rid of the ampersands). It's also more readable and more consistent
with if(window.mw).
Change-Id: I28262efb978c085e732b40f9dc5ddb1bda5c4376
csteipp [Thu, 12 Mar 2015 22:49:22 +0000 (15:49 -0700)]
SECURITY: Don't allow entities in XMP with HHVM
Test for, and refuse to parse, XMP chunks with a doctype declaration
when parsing XMP under HHVM.
Bug: T85848
Change-Id: Iea4feb077ee85a35509a920153daaa9321ee69f3
csteipp [Fri, 13 Mar 2015 23:52:18 +0000 (16:52 -0700)]
SECURITY: Don't allow directly calling Xml::isWellFormed
Changing Xml::isWellFormed to private. In WMF hosted repos, there are
no callers to isWellFormed directly.
Bug: T85848
Change-Id: I104427989b89c386de571b8e60642095331a1132
csteipp [Wed, 4 Feb 2015 01:45:05 +0000 (17:45 -0800)]
SECURITY: Always expand xml entities when checking SVG's
XmlTypeCheck's use of xml_parse for filtering SVG's sometimes left xml
entities unexpanded, which can lead to false-negatives when the
callback was used for filtering. Update XmlTypeCheck to use XMLReader
instead, tell the library to fully expand entities, and rely on the
library to error out if it encounters XML that is likely to cause a DoS
if parsed.
Bug: T88310
Change-Id: I77c77a2d6d22f549e7ef969811f7edd77a45dbba
csteipp [Thu, 19 Feb 2015 23:05:40 +0000 (15:05 -0800)]
SECURITY: Escape > in Html::expandAttributes
Escape > characters in attributes, so we don't confuse post-processing,
like LanguageConverter.
Bug: T73394
Change-Id: I768e2a12c7b6ba635e6c8571676b8c776b16bf72
Brad Jorsch [Mon, 5 Jan 2015 21:31:26 +0000 (16:31 -0500)]
SECURITY: Don't execute another user's CSS or JS on preview
Someone could theoretically try to hide malicious code in their user
common.js and then trick an admin into previewing it by asking for help.
Bug: T85855
Change-Id: I5a7a75306695859df5d848f6105b81bea0098f0a
Tyler Romeo [Fri, 26 Dec 2014 16:29:15 +0000 (11:29 -0500)]
SECURITY: Set maximal password length for DoS
Prevent DoS attacks caused by the amount of time
it takes to hash long passwords by setting a limit
on password length.
Slightly restructures the behavior of User::checkPasswordValidity
in order to accommodate for the difference between
passwords the user should be able to log in with and
passwords they should not.
Bug: T64685
Change-Id: I24f33474c6f934fb8d94bb054dc23093abfebd5e
csteipp [Wed, 14 Jan 2015 00:48:01 +0000 (16:48 -0800)]
SECURITY: Fix animate blacklist
The blacklist should prevent animating any element's xlink:href to a
javascript url.
Bug: T86711
Change-Id: Ia9e9192165fdfe1701f22605eee0b0e5c9137d5a
csteipp [Tue, 13 Jan 2015 01:00:45 +0000 (17:00 -0800)]
SECURITY: Don't allow embedded application/xml in SVG's
Fix for iSEC-WMF1214-11 and issue reported by Cure 53, which got
around our blacklist on embedded href targets. Use a whitelist instead.
Bug: T85850
Change-Id: I17b7ed65935b818695a83fd901fcaf90fffecf28
Tyler Romeo [Tue, 30 Dec 2014 20:24:04 +0000 (15:24 -0500)]
SECURITY: Make SVG @import checking case insensitive
@import in embedded CSS is case-insensitive, meaning
an attacker can put "@iMpOrT" and it should still
work.
This uses stripos instead of strpos to make the check
case insensitive.
Bug: T85349
Change-Id: I31db9d81f46460af2d8d3f161ba46c2ab7a170d1
jenkins-bot [Wed, 1 Apr 2015 14:49:25 +0000 (14:49 +0000)]
Merge "API: Reduce volume of "continue format is changing" warning"
jenkins-bot [Wed, 1 Apr 2015 14:41:02 +0000 (14:41 +0000)]
Merge "New hook: OpportunisticLinksUpdate"
Brad Jorsch [Wed, 1 Apr 2015 12:23:20 +0000 (08:23 -0400)]
API: Reduce volume of "continue format is changing" warning
It's excessively difficult to determine if the logs of people hitting
this warning are really going to be affected by the change or if they're
making queries where it won't actually matter.
Since 1.26 is coming soon, and with it the decision as to whether to
pull the switch on I984e6358, let's retarget the warnings to those cases
where it's possible it would actually break someone's code.
Change-Id: I91f170fd7d4c791ca8f5d3592c888700f4d5aa97
jenkins-bot [Wed, 1 Apr 2015 12:08:05 +0000 (12:08 +0000)]
Merge "Special:LinkSearch: display links to pages in content language"
daniel [Wed, 18 Mar 2015 17:21:25 +0000 (18:21 +0100)]
New hook: OpportunisticLinksUpdate
Change-Id: I8b9238cd6b0010ad91fae24d4eb1e7cd0c201931
Timo Tijhof [Wed, 1 Apr 2015 08:48:30 +0000 (09:48 +0100)]
Use "string|false" as @return instead of "string|bool" where appropiate
This makes sure static analyzers don't warn for supposedly unsafe
code accessing variables as strings when they could be boolean after
having only checked against false.
https://github.com/scrutinizer-ci/php-analyzer/issues/605
Change-Id: Idb676de7587f1eccb46c12de0131bea4489a0785
Niklas Laxström [Wed, 1 Apr 2015 08:17:10 +0000 (10:17 +0200)]
Remove redundant NS_MAIN from translations
Change-Id: Ia01549310909281e48260950f97a8f6fa12ae230
Kunal Mehta [Wed, 1 Apr 2015 07:07:44 +0000 (00:07 -0700)]
installer: Use wfLoadExtension/Skin in LocalSettingsGenerator
Bug: T87791
Change-Id: I37cede7396d9677466ec68289702a3a73f1a1f8a
Kunal Mehta [Wed, 1 Apr 2015 07:01:41 +0000 (00:01 -0700)]
installer: Reduce some code duplication in LocalSettingsGenerator
Change-Id: Ie3c2e56ac4d20d6d547e89a4d6c6331f4222409b
ayush_garg [Tue, 31 Mar 2015 10:51:36 +0000 (16:21 +0530)]
Special:LinkSearch: display links to pages in content language
Bug: T66064
Change-Id: Ib2af28bec7b9c6ec01c5628be07e1280cbbd2f83
Timo Tijhof [Wed, 1 Apr 2015 00:15:33 +0000 (01:15 +0100)]
Doxyfile: Suppress warnings for phpunit "@" annotations
This annotations are not relevant for Doxygen.
Examples:
> parserTest.inc:320: warning: Found unknown command `\group'
> ActionTest.php:3: warning: Found unknown command `\covers'
> ActionTest.php:128: warning: Found unknown command `\dataProvider'
> ApiBlockTest.php:67: warning: Found unknown command `\expectedException'
> ApiBlockTest.php:68: warning: Found unknown command `\expectedExceptionMessage'
Change-Id: I1d2d617ee6c15d51943bec3563ea4ffd353baec4
Timo Tijhof [Wed, 1 Apr 2015 00:09:29 +0000 (01:09 +0100)]
Doxyfile: Suppress warnings for invalid @codingStandardsIgnoreStart
This phpcs annotation is not relevant for Doxygen.
> Preprocessor_DOM.php:24: warning: Found unknown command `\codingStandardsIgnoreStart'
> Preprocessor_Hash.php:760: warning: Found unknown command `\codingStandardsIgnoreStart'
Change-Id: I91ea668486a87fff0193a3cccb97f96943d4bf33
jenkins-bot [Wed, 1 Apr 2015 00:19:04 +0000 (00:19 +0000)]
Merge "Made InfoAction::invalidateCache() use READ_LATEST"
Aaron Schulz [Mon, 30 Mar 2015 22:50:39 +0000 (15:50 -0700)]
Made InfoAction::invalidateCache() use READ_LATEST
Change-Id: I794c443b9d65d924366eff9baaf4460ce196a967
Timo Tijhof [Tue, 31 Mar 2015 23:44:53 +0000 (00:44 +0100)]
mwdocgen: Exclude node_modules from Doxygen
So that local runs don't take forever and won't recurse into unrelated
php files in some npm package.
Change-Id: Ic8068fa048075584c9334d0c21fb4efd87eade02
Timo Tijhof [Tue, 31 Mar 2015 23:40:55 +0000 (00:40 +0100)]
DefaultSettings: Fix doxygen warning for missing @endcond
Follows-up r67733 which fixed this, but it got lost in the meantime.
> /includes/DefaultSettings.php:46:
> warning: Conditional section with label file_level_code does not have
> a corresponding @endcond command within this file.
Change-Id: If7cfe278c50e1639ef2662ba87c85426a964c22f
Aaron Schulz [Thu, 26 Mar 2015 00:29:31 +0000 (17:29 -0700)]
Added slave/master fallback logic in Revision
* This is a more specific form of the logic removed in
3c2bc32ae1.
It does not suffer the problem of causing constant master DB
queries due to a bad template reference or such.
* It will use the master if writes from the current thread
are pending or were recently committed. This deals with the
common problem of code that needs to read things it just wrote,
such as diffs on rollback or edit hooks.
* This commit reverts
8624e261f by making the hack obsolete.
Bug: T93866
Bug: T94407
Change-Id: Ib9ecb75e1236e767bdc86d124d5e22a03ae0fb5f
Timo Tijhof [Tue, 31 Mar 2015 22:52:31 +0000 (23:52 +0100)]
tests: Clean up file headers
* Remove redundant @licence/@license from test suite files.
They already have full licence headers. And @licence raises a
warning in Doxygen.
* Fix weird messes of comments inside comments and other things.
Change-Id: I38da8ca76330f72b8dc22b0ecf1ea69d5ea55ede
jenkins-bot [Tue, 31 Mar 2015 22:38:38 +0000 (22:38 +0000)]
Merge "mw.track: Add test suite"
Timo Tijhof [Fri, 27 Mar 2015 23:54:45 +0000 (23:54 +0000)]
mw.track: Add test suite
Change-Id: I3ad2c0b5b993e3a0c67b420ff1768131e8f3b3b6
Timo Tijhof [Tue, 31 Mar 2015 18:17:11 +0000 (19:17 +0100)]
resourceloader: Simplify getHashMtime() to merely a timestamp
Similar to what getDefinitionMtime() does already. No need to
repeat the hash. No need for an array that needs serialising and
unserialising internally.
Change the hash key to avoid using old cache values.
Also moved the comment about hashes being included in the key to
this method. getDefinitionMtime() is a later method that performs
the same logic but doesn't need the entire story again.
Follows-up
044713c4,
d3bdda32.
Change-Id: Idd83de5ac27138a2dbf2ec49d81ea9188bd6ad57
jenkins-bot [Tue, 31 Mar 2015 19:06:41 +0000 (19:06 +0000)]
Merge "ResourceLoaderImage: Some cleanup, typo fixes and tweaks"
jenkins-bot [Tue, 31 Mar 2015 19:06:39 +0000 (19:06 +0000)]
Merge "ResourceLoaderImage: Throw exception if files don't exist"
Translation updater bot [Tue, 31 Mar 2015 18:55:19 +0000 (18:55 +0000)]
Merge "Localisation updates from https://translatewiki.net."