jenkins-bot [Mon, 26 Oct 2015 12:32:57 +0000 (12:32 +0000)]
Merge "Special:Upload Fire wikipage.content hook"
jenkins-bot [Mon, 26 Oct 2015 07:36:19 +0000 (07:36 +0000)]
Merge "Remove unused fields from User"
Aaron Schulz [Sun, 25 Oct 2015 18:35:33 +0000 (11:35 -0700)]
Remove unused fields from User
Change-Id: Ib209747f1ebd1433969b13b1ecb86d3b57f9be9a
jenkins-bot [Mon, 26 Oct 2015 07:14:54 +0000 (07:14 +0000)]
Merge "In UploadStash, prioritize core metadata over file handler metadata"
jenkins-bot [Mon, 26 Oct 2015 07:01:54 +0000 (07:01 +0000)]
Merge "clone is not a function"
Kevin Israel [Mon, 26 Oct 2015 01:29:47 +0000 (21:29 -0400)]
Preprocessor: Use correct cache prefix for the subclass
Follows-up
1559be9f7aef, which caused "Preprocessor" to be used as the
cache prefix for all subclasses, by using late static binding to access
the constant. Though use of that feature has been discouraged[1], this
change is a straightforward bug fix, and any improvements can be made
separately.
[1]: https://www.mediawiki.org/wiki/Manual:Coding_conventions/PHP#Late_static_binding
Change-Id: Ib25e1908a6373f6675659a0906e12d4a38af014c
jenkins-bot [Sun, 25 Oct 2015 23:17:51 +0000 (23:17 +0000)]
Merge "Database::__construct(): Don't set $mTrxAtomicLevels to an SplStack"
Ori Livneh [Thu, 8 Oct 2015 20:54:15 +0000 (13:54 -0700)]
Consolidate common Preprocessor caching code
* Consolidate nearly-identical caching code in Preprocessor_DOM and
Preprocessor_Hash by making Preprocessor an abstract class rather than an
interface and by implementing Preprocessor::cacheSetTree() and
Preprocessor::cacheGetTree().
* Cache trees for wikitext blobs that have length equal or greater to
PreprocessorCacheThreshold. Previously they needed to be greater than
PreprocessorCacheThreshold, so this changes the requirement by one character.
I did it because it seems more natural.
* Modernize the code to use singleton service objects rather than globals.
We spend a lot of time in the Preprocessor, so it would be nice for this code
to be well-factored and clear.
Change-Id: Ib71c29f14a28445a505e12c774a24ad964330b95
Kevin Israel [Sun, 25 Oct 2015 23:02:15 +0000 (19:02 -0400)]
Database::__construct(): Don't set $mTrxAtomicLevels to an SplStack
Follows-up
db0b9ef2649c and
01ef30fcc495.
Change-Id: I06188c746fb885819aa93e0e3caf3dc2bac7ae72
jenkins-bot [Sun, 25 Oct 2015 21:33:04 +0000 (21:33 +0000)]
Merge "Update CACHE_MEMCACHED to not used newMemcached"
Derk-Jan Hartman [Sun, 25 Oct 2015 19:25:08 +0000 (20:25 +0100)]
Special:Upload Fire wikipage.content hook
The warning here is a fragment of wikicode, and can include the video
player for instance.
Bug: T51751
Change-Id: I45e10f5f5700ea7c526a63b4f47a21d630c6d8ee
Translation updater bot [Sun, 25 Oct 2015 20:48:12 +0000 (21:48 +0100)]
Localisation updates from https://translatewiki.net.
Change-Id: I82484aa5a52137eadc2cae6a7355fef38f089977
jenkins-bot [Sun, 25 Oct 2015 20:33:04 +0000 (20:33 +0000)]
Merge "installer: Remove additional newline in LocalSettings.php"
saper [Fri, 23 Oct 2015 20:09:04 +0000 (22:09 +0200)]
installer: Remove additional newline in LocalSettings.php
Change-Id: I6a0630d109c0ab4299507d125e4e1748055bcd58
jenkins-bot [Sun, 25 Oct 2015 18:41:56 +0000 (18:41 +0000)]
Merge "Cleanup on Special:AllPages and Special:PrefixIndex"
Aaron Schulz [Sun, 25 Oct 2015 18:24:16 +0000 (11:24 -0700)]
Update CACHE_MEMCACHED to not used newMemcached
* Follow up to
0dd27b1da9e45
* Also removed that method, which is not used by callers
Bug: T116541
Change-Id: Ic6e4e25089de112cfd263fb042d654ee06970859
Brian Wolff [Sat, 24 Oct 2015 18:15:26 +0000 (12:15 -0600)]
In UploadStash, prioritize core metadata over file handler metadata
If us_props is too big for the database (> 64kb), don't store the
file handler metadata. This is usually by far the biggest portion
(For pdf/djvu it contains OCR data), and it's non-critical to the
upload process as it's only needed for display, and the file handler
will probably regenerate it anyway if it is missing.
At some point in the future, having data too big for a db field
is probably going to cause errors instead of silent truncation,
so we really don't want to be doing silent truncation.
An alternative way to solve T94562 might be to make it use us_sha1
instead of the one encoded in us_props, but seems like it's important
to fix us_props for other data in it too.
Bug: T94562
Change-Id: I8aed6a1a5c9a136090b36d4ad23d8429791f58c4
jenkins-bot [Sun, 25 Oct 2015 11:50:09 +0000 (11:50 +0000)]
Merge "Use the new 'difftotextpst' option of prop=revisions API in live preview script"
Matt Russell [Wed, 21 Oct 2015 15:08:34 +0000 (02:08 +1100)]
Use the new 'difftotextpst' option of prop=revisions API in live preview script
This should improve the diff performance on large pages by a fair amount,
especially on slow connections, as you now just upload the page content once
and then download the diff, rather than having to upload the page content,
download the PST'd page content, re-upload the PST'd page content, and then
finally download the diff.
If there is a summary, the parse request is still performed with just the summary
text, but it is done in parallel to the diff request, and will likely finish
before the diff request anyway, so won't impact the diff performance.
A further improvement could be potentially made, by not sending a summary parse
request when the summary is plain text. This would be fairly easy to detect
(assuming extensions can't modify what is parsed in a summary), just
look for "[[" and "/*".
Also improves the error handling to show errors occurring on the diff request.
Bug: T116178
Change-Id: Ic81bad25ccc8b96c862feb31b7dedd80d1507eeb
jenkins-bot [Sun, 25 Oct 2015 07:12:41 +0000 (07:12 +0000)]
Merge "Remove paranoid title check from RefreshLinksJob::runForTitle"
jenkins-bot [Sun, 25 Oct 2015 07:02:05 +0000 (07:02 +0000)]
Merge "Install link to Manual:Combating_spam on the home page"
Bryan Davis [Sat, 24 Oct 2015 18:42:07 +0000 (12:42 -0600)]
ObjectFactory: avoid using ReflectionClass
Add a new ObjectFactory::constructClassInstance() method that uses
a loop unrolling type of technique to avoid using ReflectionClass when
creating new class instances with 10 or fewer constructor arguments.
I really wanted to also include the use of PHP 5.6's `...` splat
operator when supported but there is no way to conditionally use a new
operator in a way that still allows older versions of PHP to parse the
same source file.
Bug: T115729
Change-Id: Ia29c4526f4bac51696654c9b0677cb3f70359966
jenkins-bot [Sat, 24 Oct 2015 23:39:50 +0000 (23:39 +0000)]
Merge "Fix bogus calls to encodeKey/decodeKey in the PHP memcached class"
Timo Tijhof [Sat, 24 Oct 2015 22:41:44 +0000 (23:41 +0100)]
objectcache: Remove outdated comment about back-compat defaults
Follows-up
0dd27b1da9e.
Change-Id: Ic21b02d93d6047eb4713dfec3cbb2fff4d51fdff
Aaron Schulz [Sat, 24 Oct 2015 22:16:59 +0000 (15:16 -0700)]
Fix bogus calls to encodeKey/decodeKey in the PHP memcached class
* Follow up to
cdb543272883b180
* These are no longer needed
Change-Id: Id41c3aae50a13f3c53f2bbd9662027b36a1f4142
Aaron Schulz [Sat, 24 Oct 2015 22:36:43 +0000 (22:36 +0000)]
Merge "Move some memcached classes to /libs"
Aaron Schulz [Sat, 24 Oct 2015 21:54:10 +0000 (14:54 -0700)]
Move some memcached classes to /libs
Also removed a few MW dependencies from MemcachedPeclBagOStuff.
It still uses an IP class method, so it has to stay for now.
Change-Id: I8c5c83046c58fb58091d6ce11b2385208262460f
Gergő Tisza [Mon, 17 Aug 2015 23:08:00 +0000 (23:08 +0000)]
Validate status codes returned from the AbortLogin hook
In case of a return value which is not in LoginForm::$statusCodes,
this results in a nicer error message instead of an array access error.
Bug: T109193
Change-Id: I64c955327c7dfc64807fa83d30538f3da66618bc
jenkins-bot [Sat, 24 Oct 2015 22:24:58 +0000 (22:24 +0000)]
Merge "Remove some MW dependencies from RedisConnectionPool"
Aaron Schulz [Sat, 24 Oct 2015 21:47:19 +0000 (14:47 -0700)]
Move MemcachedBagOStuff b/c logic to ObjectCache
Change-Id: Iedb173b00d543237b3e7560b8079b8d488e00d80
Aaron Schulz [Sat, 24 Oct 2015 22:06:24 +0000 (15:06 -0700)]
Remove some MW dependencies from RedisConnectionPool
Change-Id: I41ee08d8c6df14ef5994ea8dd2ee61eb220941e3
jenkins-bot [Sat, 24 Oct 2015 20:46:03 +0000 (20:46 +0000)]
Merge "Make DBReadOnlyError extend DBExpectedError"
jenkins-bot [Sat, 24 Oct 2015 20:22:51 +0000 (20:22 +0000)]
Merge "Move MultiWriteBagOStuff to /libs"
Aaron Schulz [Sat, 24 Oct 2015 20:13:01 +0000 (13:13 -0700)]
Make DBReadOnlyError extend DBExpectedError
This makes the output formatting a bit prettier
Change-Id: I5d5c5a421326029323ef367feac70179ecb2d9e1
Aaron Schulz [Sat, 24 Oct 2015 07:48:40 +0000 (00:48 -0700)]
Move MultiWriteBagOStuff to /libs
Also moved related tests files to /libs.
Change-Id: I806eeaa30205733d497adde933baf0c4157f7aae
jenkins-bot [Sat, 24 Oct 2015 07:43:17 +0000 (07:43 +0000)]
Merge "Minor fix to primeFileCache() comment"
jenkins-bot [Sat, 24 Oct 2015 07:28:11 +0000 (07:28 +0000)]
Merge "Provide some default $wgRateLimits values"
Aaron Schulz [Thu, 22 Oct 2015 04:52:52 +0000 (21:52 -0700)]
Provide some default $wgRateLimits values
* This provides some minimal out-of-the-box protection.
* These mostly are the values used by WMF in mediawiki-config
Change-Id: Ie510ca9314e151f9c0ad0705d096fe2bb749a59d
Aaron Schulz [Sat, 24 Oct 2015 05:44:05 +0000 (05:44 +0000)]
Merge "Fixes to MemcachedBagOStuff::makeKeyInternal()"
Aaron Schulz [Sat, 24 Oct 2015 05:24:48 +0000 (22:24 -0700)]
Add wfWaitForSlaves() to HTMLCacheUpdateJob
Change-Id: Iabf3d01f15b36bcb51e7fd8512404df2a3aedf35
Aaron Schulz [Sat, 24 Oct 2015 04:03:11 +0000 (21:03 -0700)]
Fixes to MemcachedBagOStuff::makeKeyInternal()
* Follow-up to
0c9fb12265e2
* Make sure colons actually get escaped
* Added more unit tests
* Also fixed the test actual/expected order
Change-Id: Ie04ea6059ee1eb6d1da8f30fefdec52fa49d38fb
jenkins-bot [Sat, 24 Oct 2015 04:38:46 +0000 (04:38 +0000)]
Merge "Web installer should not pollute global namespace with session variables"
Aaron Schulz [Sat, 24 Oct 2015 04:14:11 +0000 (21:14 -0700)]
Remove paranoid title check from RefreshLinksJob::runForTitle
Change-Id: Ie2b875dcb394e9cf20818a26d245684933765baf
Ori Livneh [Fri, 23 Oct 2015 22:12:51 +0000 (15:12 -0700)]
Escape colons in BagOStuff key segments
For the sake of safety and correctness, the following BagOStuff::makeKey()
invocations should return distinct keys:
$cache->makeKey( 'ab:', 'cd' );
$cache->makeKey( 'ab', ':cd' );
That is not currently the case, because while we use ':' as a key path
separator, we don't escape ':' in the input supplied to makeKey(). So, make
BagOStuff::makeKeyInternal() URL-encode colons.
To prevent this from messing up the max. key length calculations, reproduce
this logic in MemcachedBagOStuff::makeKeyInternal(), in lieu of having the
method call its parent.
Change-Id: I83ea7e7336a1c9e64aa42284c2517089a736efe5
Ori Livneh [Sat, 24 Oct 2015 00:53:25 +0000 (17:53 -0700)]
Ensure all key transformations are applied by BagOStuff::makeKeyInternal()
Currently we have to undo any transformations we apply to keys in getMulti() by
iterating over the response array keys reversing any changes. This is hairy and
complicated. So --
* Replace calls to MemcachedBagOStuff::encodeKey() with calls to a new method,
MemcachedBagOStuff::validateKeyEncoding(). The new method only validates that
the key is compatible with memcached. If it is not, it throws an exception.
If it is, it returns the key unmodified.
* Remove MemcachedBagOStuff::{encode,decode}Key(), since they no longer serve a
purpose, and have no callers.
Change-Id: If3e20c6a1a1b42fc1f2823aa660328e37c26eccb
Aaron Schulz [Sat, 24 Oct 2015 00:18:56 +0000 (17:18 -0700)]
Minor fix to primeFileCache() comment
Change-Id: I7d040c5a914574df72fa31612df0eb28e15fd46c
saper [Fri, 23 Oct 2015 20:54:42 +0000 (22:54 +0200)]
Web installer should not pollute global namespace with session variables
There is no need to store session variables
(that also include user-supplied arguments)
as $wgXXX global variables.
Bug: T116375
Change-Id: I880d4299566beaf99ed1fc21c690cdda64149b0e
jenkins-bot [Fri, 23 Oct 2015 23:36:29 +0000 (23:36 +0000)]
Merge "Improve normalization and sanitization of memcached keys"
saper [Fri, 23 Oct 2015 23:23:18 +0000 (01:23 +0200)]
Install link to Manual:Combating_spam on the home page
Bug: T85327
Change-Id: I2bfe8b1489f748df2d24946d7c49b97d5cbf921e
Ori Livneh [Fri, 23 Oct 2015 18:10:10 +0000 (11:10 -0700)]
Improve normalization and sanitization of memcached keys
The motivation for this patch came from seeing the following error in the
memcached log:
memcached ERROR: Memcached error for key "flowdb:flow_ref:wiki:by-source:\
v3:0:tawikinews:பூமிக்கு_அச்சுறுத்தலான_சிறுகோள்களைக்_கண்டுபிடிக்கும்_முயற்சியில்_தனியார்_நிறுவன0jம்:4.7" \
on server ":": A BAD KEY WAS PROVIDED/CHARACTERS OUT OF RANGE
I submitted a fix to Flow in I26e531f6, but I noticed that AbuseFilter had a
similar issue (fixed by Aaron in I27b51a4b), so I started thinking about how
to solve this more generally:
* The regular expression we current use to sanitize keys does not cover
characters outside the ASCII range, but such characters can be illegal
if one of their constituent bytes (when taken by itself) is an ASCII
control character. So change the regular expression to cover any and all
characters that fall outside the range \x22-\x7e (and '#' -- see below).
* Enforce a key length limit of 255 bytes, which is the maximum length
permitted by the memcached protocol. The Tamil segment in the key above is 84
characters, but 233 bytes in UTF-8, which become 684 characters when
URL-encoded. To fix this, try to shrink any segment that would push the total
key length over the limit by md5()ing it. If the end result is *still* over
the limit (this would happen if, for example, $args consists of many short
strings), then concatenate all args together and MD5 them.
* MD5'd arguments are prefixed with '#'. Any "organic" '#'s in the key segments
are URL-encoded.
Change-Id: Ia46987d3b0a09bb6b1952abd936d4c72ea7c56a0
jenkins-bot [Fri, 23 Oct 2015 22:16:20 +0000 (22:16 +0000)]
Merge "installer: Define $wgResourceBasePath in LocalSettings.php"
jenkins-bot [Fri, 23 Oct 2015 22:02:01 +0000 (22:02 +0000)]
Merge "poolcounter: Add 'trigger' field to the slow-parse log"
saper [Fri, 23 Oct 2015 12:40:00 +0000 (14:40 +0200)]
installer: Define $wgResourceBasePath in LocalSettings.php
Bug: T116374
Bug: T75031
Change-Id: I459c1097ed7048c3fe24e636e9ea22ec2e3b2675
Timo Tijhof [Fri, 23 Oct 2015 18:33:52 +0000 (19:33 +0100)]
poolcounter: Add 'trigger' field to the slow-parse log
To better indicate that these are only triggered by page views.
We don't currently have any slow-parse logging for the parser
invocation that happens during save (which means we're potentially
missing lots of them).
Once we add that, this will help distinguish them.
Bug: T110760
Change-Id: I22be5684ef93efd410d683637e223f770d6c768c
jenkins-bot [Fri, 23 Oct 2015 20:30:20 +0000 (20:30 +0000)]
Merge "Remove buggy b/c logic in Parser::disableCache()/updateCacheExpiry()"
Aaron Schulz [Fri, 23 Oct 2015 19:35:43 +0000 (12:35 -0700)]
Remove buggy b/c logic in Parser::disableCache()/updateCacheExpiry()
* Setting mCacheTime to -1 is for old callers that
only check getCacheTime() instead of getCacheExpiry().
Most of them are already broken (WikiLog/SemanticForms) as
they check for -1 which is in fact never returned
due to the TS_MW conversion in Parser::getCacheTime.
* By using -1, the value of page_links_updated can end up
as 1969, which is confusing and broken.
Change-Id: I8809a4258eacff05992a2c27ade7f6a0c1731c51
Translation updater bot [Fri, 23 Oct 2015 19:27:57 +0000 (21:27 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ia0a10443f264e238e6136edbb2bb60dd9ddd1c96
jenkins-bot [Fri, 23 Oct 2015 19:04:53 +0000 (19:04 +0000)]
Merge "Setup.php: Remove incorrect comment"
Bartosz Dziewoński [Fri, 23 Oct 2015 18:50:11 +0000 (20:50 +0200)]
Setup.php: Remove incorrect comment
This is not true since $wgSkinExtensionFunctions was removed in r87487.
Change-Id: Ia2c75aa191516fa43272ed51789579cf7afd9e37
Kunal Mehta [Thu, 15 Oct 2015 18:37:38 +0000 (11:37 -0700)]
Throw Exceptions on preg_* failures in MagicWordArray::matchAndRemove()
There are a lot of other cases in this file alone that need to be fixed
(e.g. (bool)preg_match), but those should be fixed in a more systematic
way like a wrapper function.
Bug: T115514
Change-Id: I3840a56adc0a6e50963b930051892491f8e90245
jenkins-bot [Fri, 23 Oct 2015 15:36:30 +0000 (15:36 +0000)]
Merge "Move CAPTCHA messages into ConfirmEdit and update class names"
Fomafix [Fri, 23 Oct 2015 12:24:15 +0000 (12:24 +0000)]
mediawiki.notification.css: Avoid horizontal scrollbar on fade in and fade out
This is a follow-up to I01473a199665b9fd86ed50b7d117532ac94f3edf.
Change-Id: I596927bfca0efd52db8d46eeea9ba38c7a9f7ca5
jenkins-bot [Fri, 23 Oct 2015 07:44:45 +0000 (07:44 +0000)]
Merge "ApiQueryAllRevisions: Actually use 'start' and 'end'"
Timo Tijhof [Fri, 25 Sep 2015 15:15:58 +0000 (16:15 +0100)]
mediawiki.notification: Use CSS tranforms for in/out animations
Remove the whole placeholder system. This was needed to preserve
parking space while visually animating the element elsewhere.
CSS transforms have this behaviour naturally.
Change-Id: I01473a199665b9fd86ed50b7d117532ac94f3edf
Aaron Schulz [Fri, 23 Oct 2015 03:40:57 +0000 (20:40 -0700)]
Reduce DBPerformance warning spam for jobs a bit
Change-Id: I1c5fdae6e0f98fff5f3336d8a46a4b3ff25d5bad
jenkins-bot [Fri, 23 Oct 2015 01:43:28 +0000 (01:43 +0000)]
Merge "Bound BagOStuff::lock() RTT estimate for sanity"
jenkins-bot [Fri, 23 Oct 2015 01:32:00 +0000 (01:32 +0000)]
Merge "Make TransactionProfiler show the actual query times"
jenkins-bot [Thu, 22 Oct 2015 21:40:44 +0000 (21:40 +0000)]
Merge "Fix ChangeTag "lockTSE" values as INF does not actually work"
jenkins-bot [Thu, 22 Oct 2015 21:31:12 +0000 (21:31 +0000)]
Merge "Revert "mediawiki.Upload.BookletLayout: If the user can't upload, don't show them the form""
Bartosz Dziewoński [Thu, 22 Oct 2015 21:20:50 +0000 (21:20 +0000)]
Revert "mediawiki.Upload.BookletLayout: If the user can't upload, don't show them the form"
This actually won't work for Wikimedia wikis, turns out
that many of them disabled local uploads.
This reverts commit
29edb68446b5b6faa4b5038698f042ef25e4425d.
Bug: T115866
Change-Id: Ib28539f2ff22cdbf1d80b1b601e7855c1110ad40
jenkins-bot [Thu, 22 Oct 2015 21:10:38 +0000 (21:10 +0000)]
Merge "mediawiki.Upload.BookletLayout: If the user can't upload, don't show them the form"
jenkins-bot [Thu, 22 Oct 2015 21:10:34 +0000 (21:10 +0000)]
Merge "Make LinksUpdate::__construct() use normal type hints"
Aaron Schulz [Thu, 22 Oct 2015 21:00:06 +0000 (14:00 -0700)]
Fix ChangeTag "lockTSE" values as INF does not actually work
Change-Id: If6c6b034be60ffc8b22b67cef12e5d701a871788
jenkins-bot [Thu, 22 Oct 2015 20:46:00 +0000 (20:46 +0000)]
Merge "Properly make LinksUpdate be recursive when done from job queue"
Aaron Schulz [Thu, 22 Oct 2015 20:25:49 +0000 (13:25 -0700)]
Make LinksUpdate::__construct() use normal type hints
Change-Id: Ie5f4de95d07ac9f24e415f92c5116385863a47f9
Bartosz Dziewoński [Thu, 22 Oct 2015 19:25:32 +0000 (21:25 +0200)]
mediawiki.Upload.BookletLayout: If the user can't upload, don't show them the form
To improve in the future:
* Check the rights on the target wiki rather than current, they might
not be the same
* Use a better error message when not all logged-in users can upload
Bug: T115866
Change-Id: I6f68122b5399f4b8766825c752e964478ae7563d
Brian Wolff [Thu, 22 Oct 2015 18:56:03 +0000 (12:56 -0600)]
Properly make LinksUpdate be recursive when done from job queue
New enqueue method of DeferredUpdates was turning LinksUpdate
updates into Jobs. However RefreshLinksJob was not properly
reconstructing the secondary updates as being recursive (if they
were recursive). This means that templates weren't having the pages
that were using them being updated.
See also related T116001.
Change-Id: Ia06246efb2034fdfe07232fd8c2334160edbcf02
Translation updater bot [Thu, 22 Oct 2015 18:46:05 +0000 (20:46 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I7830f3ff793b90c23a08fa3496a7178c127cd605
Glaisher [Mon, 19 Oct 2015 18:00:44 +0000 (23:00 +0500)]
Cleanup on Special:AllPages and Special:PrefixIndex
* Move pagination links to the left (on LTR) and below the form
* Drop a few HTML classes
* Minor code cleanups
* Remove Allpages link from Special:Allpages pagination links
Follows up I720d34e21950c18de3c6e0b1d6d8a4461db495cb
Bug: T32965
Change-Id: I19018d87b769320761a95410bb3198b31f16544d
Matthew Flaschen [Thu, 22 Oct 2015 14:49:09 +0000 (10:49 -0400)]
Move CAPTCHA messages into ConfirmEdit and update class names
Depends on I0e55a159efd66a73cd217d9a5e86b2bced90f57a in ConfirmEdit .
This should be merged just after that.
Also, remove a dead config variable.
This leaves only the CAPTCHA stuff that is actually specific
to CreateAccount.
Change-Id: I8924d537cad3e39adace99fb20626247128d9bd9
umherirrender [Fri, 16 Oct 2015 14:02:01 +0000 (16:02 +0200)]
Move Special:PageLanguage to the pagetools group on Special:SpecialPages
Acting on pages, so that group is better than the default of "other"
Change-Id: I50c993d69048eeee913fbab513711018999aafe9
jenkins-bot [Thu, 22 Oct 2015 07:10:31 +0000 (07:10 +0000)]
Merge "Remove old ProfilerOutputUdp class"
Ori Livneh [Thu, 22 Oct 2015 06:44:26 +0000 (23:44 -0700)]
JobQueueRedis::doBatchPush(): report metrics even when failures occur
The way the method is currently written, no stats are reported at all when
failures occur.
Change-Id: I627e8f6ce3a59098bc8949da7ed22f5c924177fc
Ori Livneh [Thu, 22 Oct 2015 06:34:06 +0000 (23:34 -0700)]
jobqueue: track real job inserts as 'inserts_actual'
The `inserts` metric includes dupes. `inserts_actual` will track the rate at
which the job queue is actually growing.
Change-Id: Ie7c544fc8e59180a204d1d149b6a23ac48b8abab
Aaron Schulz [Thu, 22 Oct 2015 06:30:23 +0000 (23:30 -0700)]
Make TransactionProfiler show the actual query times
Also removed HTTP method from the message as logstash
gets those from the logger already
Change-Id: I7a6d9cb3ec8c7fcb53a081ee2bd055ff8c1c72c1
jenkins-bot [Thu, 22 Oct 2015 05:46:45 +0000 (05:46 +0000)]
Merge "CacheLRU: Simplify >0 assertion and remove verbose inline comment"
Aaron Schulz [Thu, 22 Oct 2015 04:59:47 +0000 (21:59 -0700)]
Make LinksUpdate job spec use "refreshLinksPrioritized"
This was missing in
4fcc427c10 due to being lost in PS4
Change-Id: I24641e7eccc1e61226777504dcfd75e1aa7f58c6
Aaron Schulz [Thu, 22 Oct 2015 03:59:47 +0000 (20:59 -0700)]
Remove old ProfilerOutputUdp class
This uses a non-standard output and requires a custom
collector that wmf does not maintain nor use anymore.
Change-Id: I41a68f7061465417fbdc5ca41f8eb6e1f99f1111
Aaron Schulz [Thu, 22 Oct 2015 03:14:54 +0000 (20:14 -0700)]
Bound BagOStuff::lock() RTT estimate for sanity
The timestamp difference might be 0 (or in rare cases, less)
Change-Id: I0298b413df637d9da5ff33c078ad49dadc8a46ce
jenkins-bot [Thu, 22 Oct 2015 02:33:16 +0000 (02:33 +0000)]
Merge "objectcache: Fix grammar error in BagOStuff::getWithToken doc"
Aaron Schulz [Sun, 18 Oct 2015 22:57:42 +0000 (15:57 -0700)]
Add WRITE_SYNC flag to BagOStuff::set()/merge()
* This blocks on writing to all replicas
and returns false if any failed.
* This is useful if ChronologyProtector is to work across
domains by having the writes go everywhere so that later
reads will see them (and be local at the same time).
* Redundant doc comments were also removed.
Change-Id: I9ed098d563c64dba605e7809bc96731da3b3e79d
Timo Tijhof [Thu, 22 Oct 2015 01:35:35 +0000 (02:35 +0100)]
objectcache: Fix grammar error in BagOStuff::getWithToken doc
Follows-up
1fa1235d32.
Change-Id: I19a4430609423f5ff32a1014ed21131175469adf
Aaron Schulz [Thu, 8 Oct 2015 07:09:08 +0000 (00:09 -0700)]
Make DeferredUpdates::doUpdates always commit per task
* All callers are either using commit already or would be fine
using it (e.g. Maintenance scripts and JobRunner that have
no real transaction open).
Change-Id: I9f54b27619da6dac2cb63d255995aabc4ee78002
Aaron Schulz [Thu, 22 Oct 2015 00:31:18 +0000 (17:31 -0700)]
Make hookErrorHandler() only care about serious signature errors
Previously, it would send all manor of warnings to the error
and error-json channels. This adds a lot of overhead due to
AbuseFilter parse/eval errors. By passing immediately instead
of after calling handleError(), that overhead is avoided. Since
it still passes (e.g. returns false), any default PHP warning
logging still applies.
Change-Id: I18e60c09c2a48f2e26abab5d451bb52ea4ba7961
jenkins-bot [Thu, 22 Oct 2015 00:11:29 +0000 (00:11 +0000)]
Merge "TemplateParser: Use context makeKey() instead of wfMemcKey()"
Timo Tijhof [Wed, 21 Oct 2015 23:55:10 +0000 (00:55 +0100)]
TemplateParser: Use context makeKey() instead of wfMemcKey()
Also:
* Use ternary shorthand.
* Remove verbose comment about APC fallback. APC always requires
a fallback and is enforced by the method being called. Stating
the obvious is confusing here.
Change-Id: Ie5cb3bdc60600806b01b57f1f1b352b981818b0d
jenkins-bot [Wed, 21 Oct 2015 20:54:04 +0000 (20:54 +0000)]
Merge "mediawiki.api: Don't hold references to finished requests forever"
jenkins-bot [Wed, 21 Oct 2015 20:05:47 +0000 (20:05 +0000)]
Merge "Replace some calls to wfGetMainCache()"
jenkins-bot [Wed, 21 Oct 2015 19:54:26 +0000 (19:54 +0000)]
Merge "Fix transaction warnings on test cleanup rollback()"
Bartosz Dziewoński [Tue, 20 Oct 2015 22:50:20 +0000 (00:50 +0200)]
mediawiki.api: Don't hold references to finished requests forever
Follow-up to Ie614b05fbfbddca38ea201e90053bebdd58da949.
Also removed a TODO comment which no longers makes sense. (We can't
share API objects because users could abort each others' requests.)
Change-Id: I106139d6e463d7e5e3473035835eb74b18829b87