Translation updater bot [Mon, 25 Jul 2016 19:58:15 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Iea286077578232c907a4bddf4516c3fe9994397f
jenkins-bot [Mon, 25 Jul 2016 19:42:18 +0000 (19:42 +0000)]
Merge "objectcache: Disable RedisBagOStuff constructor in unit test"
jenkins-bot [Mon, 25 Jul 2016 18:47:44 +0000 (18:47 +0000)]
Merge "objectcache: Add callable doc comments for WANObjectCache"
Aaron Schulz [Mon, 25 Jul 2016 05:33:06 +0000 (22:33 -0700)]
objectcache: Add callable doc comments for WANObjectCache
Change-Id: I28a705ae12e065dc8a3921e33c873f9a7fbb7490
Reedy [Mon, 25 Jul 2016 16:36:35 +0000 (17:36 +0100)]
MW_DIFF_VERSION is globally defined, drop MW_ prefix when used as
the class constant
Bug: T141272
Change-Id: I0a9e9037b2259515df6366184cc781ecb78f424c
Timo Tijhof [Mon, 25 Jul 2016 15:53:03 +0000 (16:53 +0100)]
objectcache: Disable RedisBagOStuff constructor in unit test
Follows-up
c4e698dc2. The tests are failing on Travis CI because
php5-redis isn't installed by default. These tests shouldn't need
that to be installed (and even then, we should skip gracefully as
it is an optional dependency).
> RedisBagOStuffTest::testUnserialize with data set #0
> Exception: RedisConnectionPool requires a Redis client library.
> ./mediawiki/includes/clientpool/RedisConnectionPool.php:86
Fixed by using a mock and disabling the original constructor.
Change-Id: Icced7c30a75516c2118489ad29eac2aa5cff80ad
jenkins-bot [Mon, 25 Jul 2016 14:25:19 +0000 (14:25 +0000)]
Merge "Revert "mediawiki.special.userlogin.signup: Remove unnecessary field hiding code""
Bartosz Dziewoński [Mon, 25 Jul 2016 13:55:20 +0000 (13:55 +0000)]
Revert "mediawiki.special.userlogin.signup: Remove unnecessary field hiding code"
Whoops, we actually still have the option to bring back the old
custom HTML login forms ($wgDisableAuthManager). Too early.
This reverts commit
23e5bcb767c57d3a3f90b9fc597b87c8706a4027.
Change-Id: Ifb3ab1bf27ba2190177b65f5442dde74d20140e9
jenkins-bot [Mon, 25 Jul 2016 11:17:43 +0000 (11:17 +0000)]
Merge "mediawiki.special.userlogin.signup: Remove unnecessary field hiding code"
Bartosz Dziewoński [Mon, 25 Jul 2016 10:59:28 +0000 (12:59 +0200)]
mediawiki.special.userlogin.signup: Remove unnecessary field hiding code
We now use HTMLForm, which implements a generic method to do this
using 'hide-if' parameters. We already use it for the signup form too.
This is just dead code.
Change-Id: I35cfc31aae714f3be8aa0d044de1119c279e3d34
jenkins-bot [Mon, 25 Jul 2016 10:58:45 +0000 (10:58 +0000)]
Merge "Allow providing 'notices' for OOUI HTMLForm fields"
Translation updater bot [Sun, 24 Jul 2016 19:53:44 +0000 (21:53 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ie72f1651a43be65682e451a1ee1c44fc14f31f67
Aaron Schulz [Fri, 22 Jul 2016 23:56:10 +0000 (16:56 -0700)]
Minor transaction callback cleanups
* Give the flush commit() in close() a chance to handle callbacks.
Also detect onTransactionResolution() callbacks when an error is
thrown.
* Avoid resetting callbacks redundantly, as they already get
cleared when they actually run.
* Fix a few doc comments.
Change-Id: I5c62262661b97a6c28ce0ab0949307dc119953ca
Kunal Mehta [Fri, 22 Jul 2016 22:08:21 +0000 (15:08 -0700)]
registration: Support config setings that are relative paths
Add support for configuration settings that are relative paths to the
extension directory. The most common use-case for this is where the
extension ships a generic default file, but sysadmins or packagers may
want to override it. Setting `"path": true` on the config definition
will make the value be interpreted as a relative path.
And add tests!
Bug: T100956
Change-Id: Ia87ced25b35be7a314ee2937e0ccc63f9acc5bb5
jenkins-bot [Sun, 24 Jul 2016 13:56:29 +0000 (13:56 +0000)]
Merge "Session: Improvements to encryption functionality"
Kunal Mehta [Fri, 22 Jul 2016 21:59:07 +0000 (14:59 -0700)]
registration: Fix merge_strategy in manifest_version 2
merge_strategy is set in $data, which is the definition of the config
setting, not the default value of it ($value).
Change-Id: I12ee95892b2c157bb0beb97cf2cd5ef920b7d52e
Kunal Mehta [Fri, 22 Jul 2016 21:57:28 +0000 (14:57 -0700)]
registration: Update conversion script for manifest_version 2
Config settings are now an object, with the value set as the 'value'
key.
Change-Id: Iba3999fdfc8994d50331825c9a416334db602e46
Translation updater bot [Sat, 23 Jul 2016 19:55:14 +0000 (21:55 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I7912884168f4cae479c1e6f674961feedbb261e6
jenkins-bot [Sat, 23 Jul 2016 00:57:15 +0000 (00:57 +0000)]
Merge "Use current content model for blank page content (not title default)"
jenkins-bot [Fri, 22 Jul 2016 23:44:02 +0000 (23:44 +0000)]
Merge "filebackend: Fix DBLockManager IDEA warnings"
Aaron Schulz [Fri, 22 Jul 2016 22:38:05 +0000 (15:38 -0700)]
filebackend: Fix DBLockManager IDEA warnings
Change-Id: I5e671bcee0915f65082c139be8f42aafad6413f1
jenkins-bot [Fri, 22 Jul 2016 23:30:27 +0000 (23:30 +0000)]
Merge "Make statsd counts for MWCallableUpdate actually useful"
Aaron Schulz [Fri, 22 Jul 2016 05:15:21 +0000 (22:15 -0700)]
objectcache: Add "busyValue" option to WANObjectCache::getWithSetCallback
This is useful for avoiding stampedes in the one case that lockTSE
does not alone cover, which is when the key does not exist or is
tombstoned.
Also avoid saving interim values unless the key is tombstoned
since there is no point in doing that otherwise.
Change-Id: I70997e90217a0979e0589afa7a5107b0e623c7cf
jenkins-bot [Fri, 22 Jul 2016 22:19:42 +0000 (22:19 +0000)]
Merge "Pingback: Show exactly what data is being sent during the installer"
jenkins-bot [Fri, 22 Jul 2016 22:03:11 +0000 (22:03 +0000)]
Merge "Unbreak the DB updater by removing transaction from doUpdates()"
Kunal Mehta [Fri, 22 Jul 2016 21:08:14 +0000 (14:08 -0700)]
Pingback: Show exactly what data is being sent during the installer
We have access to all the information that will be transmitted, so for
full transparency, display the actual JSON blob that will be sent.
Change-Id: I7dcc7bafb42619a8d49a27649fd7ac981efcd960
Translation updater bot [Fri, 22 Jul 2016 19:54:08 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I9a2afba022af74a48775b62abbc2f589447ed974
Bartosz Dziewoński [Mon, 30 May 2016 21:11:33 +0000 (23:11 +0200)]
HTMLForm: Allow distinguishing between form views and submission attempts
Calling HTMLForm::setFormIdentifier() will set an internal identifier
for this form. It will be submitted as a hidden form field, allowing
HTMLForm to determine whether the form was submitted (or just viewed).
Setting this serves two purposes:
* If you use two or more forms on one page, it allows HTMLForm to
identify which of the forms was submitted, and not attempt to
validate the other ones. (T102114)
* If you use checkbox or multiselect fields inside a form using the
GET method, it allows HTMLForm to distinguish between the initial
page view and a form submission with all checkboxes or select
options unchecked. (T29676)
Bug: T102114
Bug: T29676
Change-Id: Ib6ce3fd8941be86211cff5c6932b5e84982490fa
jenkins-bot [Fri, 22 Jul 2016 17:51:03 +0000 (17:51 +0000)]
Merge "DifferenceEngine: Move MW_DIFF_VERSION to class constant DIFF_VERSION"
jenkins-bot [Fri, 22 Jul 2016 17:40:59 +0000 (17:40 +0000)]
Merge "Avoid calling rollback() in setVisibility() when nothing changed"
Chad Horohoe [Wed, 20 Jul 2016 21:10:02 +0000 (14:10 -0700)]
DifferenceEngine: Move MW_DIFF_VERSION to class constant DIFF_VERSION
Deprecated the former. It's only used in 2 extensions (both active),
so we can probably get rid of this within a single release cycle.
Change-Id: I39bef62556f8f0625a5741d54f9f84d15b50610d
Aaron Schulz [Fri, 22 Jul 2016 02:32:09 +0000 (19:32 -0700)]
Make statsd counts for MWCallableUpdate actually useful
Include the method that made the callback in the key.
Change-Id: Ifc7c486ee5c8d57b2516456569bb724cf7dc2b99
jenkins-bot [Fri, 22 Jul 2016 05:34:20 +0000 (05:34 +0000)]
Merge "Avoid the use of DB rollback() in LocalFileDeleteBatch"
Tim Starling [Mon, 18 Jul 2016 02:05:13 +0000 (12:05 +1000)]
Preprocessor_Hash: use child arrays instead of linked lists
The singly-linked list data structure of Preprocessor_Hash was causing
stack exhaustion due to the need for a recursion depth proportional to
the number of children of a given PPNode, in serialize() and on
object destruction. So, switch to array-based storage. PPNode_* becomes
a temporary proxy around the underlying storage, which avoids circular
references and keeps the storage very compact. Preprocessor_DOM uses
similar temporary PPNode objects, so the fact that
$node->getFirstChild() !== $node->getFirstChild()
should not cause any new problems.
* Increment cache version
* Use JSON serialization of the store array instead of serialize(),
since JSON is more compact, even after gzipping.
* For efficiency, make $accum a plain array, and use it as an array
where possible, instead of using helper functions.
Performance and memory usage for typical input are slightly improved:
something like 4% faster for the whole parse, and 20% less memory for
the tree.
Bug: T73486
Change-Id: I0d6c162b790d6dc1ddb0352aba6e4753854f4c56
Aaron Schulz [Thu, 21 Jul 2016 05:16:20 +0000 (22:16 -0700)]
Avoid the use of DB rollback() in LocalFileDeleteBatch
Race conditions are already handled by LockManager now.
Change-Id: Idb9ac511d565db4920aff7faa6ff291e05079798
jenkins-bot [Fri, 22 Jul 2016 03:36:51 +0000 (03:36 +0000)]
Merge "Allow 'data-*' attributes in personal tools links"
jenkins-bot [Fri, 22 Jul 2016 02:12:28 +0000 (02:12 +0000)]
Merge "Improve database endAtomic() error messages"
Moriel Schottlender [Wed, 20 Jul 2016 21:15:01 +0000 (14:15 -0700)]
Allow 'data-*' attributes in personal tools links
We are limiting the attributes that are read and rendered for the
personal toolbar, but there are cases -- especially as tools get
more and more complex -- for needing to supply and read more information.
The use case that led to this change is the need to style Notification
badges with values in ::before and ::after pseudo-elements; these
elements need to display some prefixed content, and the best (only)
way to do that in no-js mode, is to set it up in CSS to be read
out of an attribute (using attr( xxx ); ).
This means that we need to read a specific attribute from the element,
but the only attributes allowed were insufficient. Allowing for data-*
attributes seemed not only a good solution for this specific case,
but a good idea in general for future tools that are added and
manipulate the personal toolbar links - allowing for storing information
without polluting the DOM.
Bug: T115845
Change-Id: Ic666540d70de52f337f839da0518cb83a990f5fd
jenkins-bot [Fri, 22 Jul 2016 02:08:26 +0000 (02:08 +0000)]
Merge "Make non-exception rollback() calls safer"
Aaron Schulz [Thu, 21 Jul 2016 01:06:46 +0000 (18:06 -0700)]
Avoid calling rollback() in setVisibility() when nothing changed
Change-Id: I7fde64fe1e6c9553447bcb9e62a1a9530f9e52ce
jenkins-bot [Fri, 22 Jul 2016 00:01:21 +0000 (00:01 +0000)]
Merge "OutputPage: Fix blank line between <html> and <head>"
Timo Tijhof [Thu, 21 Jul 2016 22:37:11 +0000 (23:37 +0100)]
mediawiki.page.startup: Remove back-compat for MediaWiki 1.25 and earlier
Follow-ups
d7905627fd (released in MediaWiki 1.26).
This commit will be released in MediaWiki 1.28.
Change-Id: I2a3e91a3efb9db3d92aa2f92fc2572b4fe4e6707
jenkins-bot [Thu, 21 Jul 2016 22:10:24 +0000 (22:10 +0000)]
Merge "Do not override content format in EditPage when loading rev."
Brian Wolff [Thu, 21 Jul 2016 21:37:08 +0000 (21:37 +0000)]
Use current content model for blank page content (not title default)
This means that if you specify ?model=MODEL_ID you can create a
page using the non-default content model (but only if you have
the correct rights. Admin by default). Previously this only worked
if you specified a preload parameter that had the content model
that you wanted.
Additionally, I believe that this makes more sense logically in
terms of using the class state instead of the global state for
the current content model.
Change-Id: I938be1abcae8ac0b5fdb82d0d57bad5526aa5dee
Ori Livneh [Thu, 30 Jun 2016 09:29:10 +0000 (02:29 -0700)]
Add option for sharing info about this MediaWiki install via pingback
When $wgPingback is true, MediaWiki will periodically ping
https://www.mediawiki.org/beacon with basic information about the local
MediaWiki installation. This data includes, for example, the type of system,
PHP version, and chosen database backend.
The pingback is sent via a deferred (post-send) update whenever $wgVersion
changes, using the updatelog table to ensure we don't send duplicate pingbacks.
A database lock ensures only one thread attempts to send the pingback, and a
cache key throttles attempts to no more than once per hour.
$wgPingback is false by default. The web installer has a checkbox for
controlling this option, and it is checked by default. This nudges new installs
to turn on pingbacks, but does not sneak this decision past sysops of existing
installs.
Change-Id: Ie43a6b46a07ebd9ccc1b9c3001f2ea02435d826b
Translation updater bot [Thu, 21 Jul 2016 20:21:50 +0000 (22:21 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I0aa5901d8414d3106e0af0fb3c5284481b243ef6
Timo Tijhof [Thu, 21 Jul 2016 19:55:04 +0000 (20:55 +0100)]
OutputPage: Fix blank line between <html> and <head>
Follows-up
a464d1d41 which changed OutputPage::headElement()
to join pieces by a line break instead of hardcoding line breaks
after (some) generated pieces.
This caused a minor regression in the form of a blank line between
<html> and <head> on every page, because I missed the one that
came from this class.
Change-Id: I5e48b852809699b205f4581c833605f3e232610a
jenkins-bot [Thu, 21 Jul 2016 19:49:06 +0000 (19:49 +0000)]
Merge "objectcache: Fix RESTBagOStuff class doc"
jenkins-bot [Thu, 21 Jul 2016 18:23:24 +0000 (18:23 +0000)]
Merge "Add missing file locks to deleteArchivedFiles.php"
Aaron Schulz [Thu, 21 Jul 2016 01:33:25 +0000 (18:33 -0700)]
Make non-exception rollback() calls safer
Use rollbackMasterChanges() instead so that all DBs get reverted.
Otherwise, external DB updates may get committed while related local
DB changes are rolled back.
Change-Id: I74de77f4b12dc15c0473c272d090caeeb97d6983
jenkins-bot [Thu, 21 Jul 2016 17:56:49 +0000 (17:56 +0000)]
Merge "Add AutoCommitUpdate class and replace some onTransactionIdle callers"
Aaron Schulz [Thu, 21 Jul 2016 17:48:50 +0000 (10:48 -0700)]
Improve database endAtomic() error messages
Change-Id: I3317012befe454654429bb5acb8988d4e7ccfb5a
jenkins-bot [Thu, 21 Jul 2016 17:27:59 +0000 (17:27 +0000)]
Merge "Enable additional balancer tests (those starting with `<!DOCTYPE html>`)"
jenkins-bot [Thu, 21 Jul 2016 17:26:59 +0000 (17:26 +0000)]
Merge "Support <textarea> tags in Balancer."
Kunal Mehta [Thu, 21 Jul 2016 06:49:37 +0000 (23:49 -0700)]
Fix @covers tag in BalancerTest
Causes failures like
<https://integration.wikimedia.org/ci/job/mediawiki-core-code-coverage/2149/console>
Change-Id: I4a3498b88f203b97639fdd248316fef1058f9ddc
Aaron Schulz [Tue, 19 Jul 2016 20:43:17 +0000 (13:43 -0700)]
Add AutoCommitUpdate class and replace some onTransactionIdle callers
* This puts the complex logic here after the commit step for
all DBs, making the main multi-DB transaction more likely
to be atomic.
* Made some cleanups to AtomicSectionUpdate and made it cancel
if the transaction is rolled back as it should.
* Also cleaned up some closures for PHP 5.4.
Change-Id: If2f7bb6b1ba6daf1cfdc934f27c32b0b10431a3d
jenkins-bot [Thu, 21 Jul 2016 05:23:22 +0000 (05:23 +0000)]
Merge "Add Unicode to ICU mappings for versions 51-57"
jenkins-bot [Thu, 21 Jul 2016 05:08:55 +0000 (05:08 +0000)]
Merge "Support tokenizing simple HTML comments in the Balancer."
Aaron Schulz [Thu, 21 Jul 2016 05:05:59 +0000 (22:05 -0700)]
Add missing file locks to deleteArchivedFiles.php
Change-Id: I512ce5a1a4f00039fbe26f1c5cd1aec655eea263
jenkins-bot [Thu, 21 Jul 2016 05:05:03 +0000 (05:05 +0000)]
Merge "Update wikimedia/wrappedstring to v2.2.0"
C. Scott Ananian [Fri, 15 Jul 2016 23:20:07 +0000 (19:20 -0400)]
Enable additional balancer tests (those starting with `<!DOCTYPE html>`)
Change-Id: Ie854cf99f7e72bcca1bb8565ace558a43dcb6379
C. Scott Ananian [Fri, 15 Jul 2016 22:46:14 +0000 (18:46 -0400)]
Support <textarea> tags in Balancer.
Change-Id: I63c2fd1c343362e49cf3b5a258fc98489744ad68
C. Scott Ananian [Fri, 15 Jul 2016 16:36:35 +0000 (12:36 -0400)]
Support tokenizing simple HTML comments in the Balancer.
Change-Id: Ib780595b13b7145e99867d16e3c225e6b2b91884
C. Scott Ananian [Thu, 14 Jul 2016 22:00:20 +0000 (18:00 -0400)]
Support <form> tags in Balancer.
Change-Id: I893fc231fea71f58449ed426d64ac99fdcb31d9e
jenkins-bot [Thu, 21 Jul 2016 03:09:17 +0000 (03:09 +0000)]
Merge "Provide onTransaction* callbacks with the transaction result"
C. Scott Ananian [Thu, 14 Jul 2016 21:00:22 +0000 (17:00 -0400)]
Support <select> tags in Balancer.
Change-Id: Ibc346624a9d035c98a29132a541e7ed6d82b364e
Aaron Schulz [Thu, 21 Jul 2016 02:32:55 +0000 (19:32 -0700)]
Provide onTransaction* callbacks with the transaction result
This can later be used to cancel certain deferred updates.
Change-Id: Ib6649b6ca400f15ff441531d0fd6aecc3e4619eb
jenkins-bot [Thu, 21 Jul 2016 02:11:45 +0000 (02:11 +0000)]
Merge "Minor bug fixes to Balancer."
Timo Tijhof [Thu, 21 Jul 2016 00:54:04 +0000 (01:54 +0100)]
Update wikimedia/wrappedstring to v2.2.0
Depends-On: Ie29b3a362ecbda988d93eb3c49fbca70a786ac05
Change-Id: I9c6857616950d18d90d53a6752d98f7ac3db20ad
Timo Tijhof [Wed, 20 Jul 2016 19:47:43 +0000 (20:47 +0100)]
resourceloader: Make createLoaderQuery() protected
Only used once in this class. Nowhere else in Wikimedia Git.
Change-Id: I190bde79cc72dc40af4ccdd51f0e473003ba39b9
Timo Tijhof [Wed, 20 Jul 2016 19:43:54 +0000 (20:43 +0100)]
resourceloader: Remove deprecated ResourceLoader::makeLoaderURL()
Deprecated since MediaWiki 1.24. Not used anywhere in Wikimedia Git.
Change-Id: I9d9b356fd61f13112e85cbe659b337ecb3c92088
jenkins-bot [Wed, 20 Jul 2016 21:56:21 +0000 (21:56 +0000)]
Merge "Title::getLinkURL(): Allow expanding PROTO_RELATIVE too"
Chad Horohoe [Wed, 20 Jul 2016 20:18:27 +0000 (13:18 -0700)]
ProfileStub: Remove getCurrentSection(), unused
No callers, no implementations in other Profiler classes
Change-Id: I5b5364d5b40964944e1595056b4c292610fcdf36
jenkins-bot [Wed, 20 Jul 2016 20:29:57 +0000 (20:29 +0000)]
Merge "Add $direct parameter to UserLoginComplete hook"
jenkins-bot [Wed, 20 Jul 2016 20:12:26 +0000 (20:12 +0000)]
Merge "Simplify lock release in LinksDeletionUpdate"
Translation updater bot [Wed, 20 Jul 2016 20:09:34 +0000 (20:09 +0000)]
Merge "Localisation updates from https://translatewiki.net."
jenkins-bot [Wed, 20 Jul 2016 20:09:15 +0000 (20:09 +0000)]
Merge "Convert SiteStatsUpdate to using newer addCallableUpdate method"
jenkins-bot [Wed, 20 Jul 2016 20:03:25 +0000 (20:03 +0000)]
Merge "Move updateNotificationTimestamp callback to DeferredUpdates"
Translation updater bot [Wed, 20 Jul 2016 20:03:24 +0000 (22:03 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I3f97a063700597ee00037cdbcbd5a77e8951f8df
jenkins-bot [Wed, 20 Jul 2016 19:59:20 +0000 (19:59 +0000)]
Merge "Fix coverage annotations"
jenkins-bot [Wed, 20 Jul 2016 19:54:30 +0000 (19:54 +0000)]
Merge "Update and reformat docs/distributors.txt"
Reedy [Wed, 20 Jul 2016 19:47:22 +0000 (20:47 +0100)]
Add Unicode to ICU mappings for versions 51-57
Change-Id: I35c2cdd2c56b491229f1f6d8b69b1de21af23aab
Max Semenik [Wed, 20 Jul 2016 06:14:57 +0000 (23:14 -0700)]
Update and reformat docs/distributors.txt
Change-Id: If9454ce170f3c46dbed89c3e542fcd5eb2b68103
jenkins-bot [Wed, 20 Jul 2016 17:39:56 +0000 (17:39 +0000)]
Merge "Exclude duplicate srcset urls"
Timo Tijhof [Wed, 20 Jul 2016 16:38:36 +0000 (17:38 +0100)]
objectcache: Fix RESTBagOStuff class doc
Currently renders slightly broken since a single line break
is ignored in Markdown (Doxygen parses these as Markdown).
Change-Id: Ibdff93e103f98b7bd8d3ef9118f246fedab288cf
Amir Sarabadani [Wed, 20 Jul 2016 13:05:12 +0000 (17:35 +0430)]
Do not collate "ا" and "و" in Persian language for category sort
Bug: T139110
Change-Id: If174e02160c954500233e3a57945e267f2b4ae29
Gergő Tisza [Wed, 20 Jul 2016 00:25:12 +0000 (17:25 -0700)]
Add $direct parameter to UserLoginComplete hook
This will help to differentiate between actual login and visiting
the login page while already logged in.
Bug: T140853
Change-Id: If8582ff61aee62b1d424e473b230ca883ddb6d05
umherirrender [Tue, 19 Jul 2016 16:15:13 +0000 (18:15 +0200)]
ApiPurge: Do not die on non content pages
Some pages seems to have page_latest = 0, and therefore no content to
linkupdate. To not get a BadMethodCallException (see T140514) there is a
null checked needed.
Change-Id: I1ebfcf131ad3f59f38ec2583650eba5b43bac999
jenkins-bot [Wed, 20 Jul 2016 13:53:39 +0000 (13:53 +0000)]
Merge "Add a test for entity expansion OOM in XmlTypeCheck"
Matthias Mullie [Mon, 18 Jul 2016 12:52:08 +0000 (14:52 +0200)]
Exclude duplicate srcset urls
Bug: T135550
Change-Id: I956dc155426739d60052a0dc77dafdf0414d5bd7
Max Semenik [Wed, 20 Jul 2016 06:05:35 +0000 (23:05 -0700)]
Fix coverage annotations
Broken by Id1071fc0647892438e5cd0e3ee621fbdaaa64014
Causes https://integration.wikimedia.org/ci/job/mediawiki-core-code-coverage/2146/console
Change-Id: I9dd0ff7a5fa17c6395dee52ad87faf1f8e612904
Chad Horohoe [Tue, 19 Jul 2016 17:29:43 +0000 (10:29 -0700)]
SiteConfiguration: Remove isLocalVHost(), deprecated since 1.25
No callers anywhere anymore.
Change-Id: I5f85b3cf60a59d28206bf56a0f8e33c812248d5d
Aaron Schulz [Tue, 19 Jul 2016 19:51:57 +0000 (12:51 -0700)]
Move updateNotificationTimestamp callback to DeferredUpdates
* This puts the complex logic here after the commit step for
all DBs, making the main multi-DB transaction more likely
to be atomic.
* Also fixed the reuseConnection() call by getting a new
handle in the callback.
Change-Id: I449a521423ff13bfbf49bdaa6e7e6df2145c8751
jenkins-bot [Tue, 19 Jul 2016 21:43:17 +0000 (21:43 +0000)]
Merge "Improvements to RefreshLinksJob/DeleteLinksJob locking"
jenkins-bot [Tue, 19 Jul 2016 21:10:05 +0000 (21:10 +0000)]
Merge "Remove redundant onTransactionIdle() call from WikiPage::doPurge"
Aaron Schulz [Tue, 19 Jul 2016 20:53:51 +0000 (13:53 -0700)]
Convert SiteStatsUpdate to using newer addCallableUpdate method
Change-Id: Ic6037b90edecc936432e997c504e81b3ae8732ad
Aaron Schulz [Tue, 19 Jul 2016 20:51:55 +0000 (13:51 -0700)]
Remove redundant onTransactionIdle() call from WikiPage::doPurge
Change-Id: I18b03ae6d2f865bbe7eb072c68b2648564ec4d6f
jenkins-bot [Tue, 19 Jul 2016 20:25:50 +0000 (20:25 +0000)]
Merge "Resources: Convert mediawiki.content.json.css to less file"
jenkins-bot [Tue, 19 Jul 2016 20:11:42 +0000 (20:11 +0000)]
Merge "HttpFunctions: Move isLocalUrl() into MWHttpRequest and make it private"
Aaron Schulz [Fri, 15 Jul 2016 20:35:03 +0000 (13:35 -0700)]
Improvements to RefreshLinksJob/DeleteLinksJob locking
* Removed the lockAndGetLatest() call which caused contention problems.
Previously, job #2 could block on job #1 in that method, then job #1
yields the row lock to job #2 in LinksUpdate::acquirePageLock() by
committing, then job #1 blocks on job #2 in updateLinksTimestamp().
This caused timeout errors. It also is not fully safe ever since
batching and acquirePageLock() was added.
* Add an outer getScopedLockAndFlush() call to runForTitle() which
avoids this contention (as well as contention with page edits)
but still prevents older jobs from clobbering newer jobs. Edits
can happen concurrently, since they will enqueue a job post-commit
that will block on the lock.
* Use the same lock in DeleteLinksJob to edit/deletion races.
Change-Id: I9e2d1eefd7cbb3d2f333c595361d070527d6f0c5