lhc/web/wiklou.git
8 years agoMerge "Update cached user ID after user is added to the database"
jenkins-bot [Fri, 20 Nov 2015 19:00:10 +0000 (19:00 +0000)]
Merge "Update cached user ID after user is added to the database"

8 years agoMerge "Use User::getId instead of trying to fix the ID in BlockTest"
jenkins-bot [Fri, 20 Nov 2015 18:59:52 +0000 (18:59 +0000)]
Merge "Use User::getId instead of trying to fix the ID in BlockTest"

8 years agoUpdate cached user ID after user is added to the database
Gergő Tisza [Thu, 19 Nov 2015 00:42:39 +0000 (16:42 -0800)]
Update cached user ID after user is added to the database

Bug: T119021
Change-Id: I5e0599d1d045b0389a7825fddc2b346e4cfd001d

8 years agoUse User::getId instead of trying to fix the ID in BlockTest
Gergő Tisza [Thu, 19 Nov 2015 22:09:29 +0000 (14:09 -0800)]
Use User::getId instead of trying to fix the ID in BlockTest

User::setId() has no effect on User::addToDatabase whatsoever,
and directly messing with the database is fragile due to
internal ID caching. Just use the insert ID instead.

Change-Id: Ib92f2b6d73deacaec90dc06634d8b3ad195d53e3

8 years agoFix undefined variable passed by reference to a hook
Reedy [Fri, 20 Nov 2015 12:37:22 +0000 (12:37 +0000)]
Fix undefined variable passed by reference to a hook

Change-Id: Iee488ff9baddc3962ca52eb34efbe7ebdb628ea5

8 years agoMerge "mediawiki.api: Use action=query&meta=tokens instead of action=tokens"
jenkins-bot [Fri, 20 Nov 2015 01:57:10 +0000 (01:57 +0000)]
Merge "mediawiki.api: Use action=query&meta=tokens instead of action=tokens"

8 years agoresources: Upgrade jquery.i18n from 1.0.3 to 1.0.4
James D. Forrester [Fri, 20 Nov 2015 00:41:20 +0000 (16:41 -0800)]
resources: Upgrade jquery.i18n from 1.0.3 to 1.0.4

Only change is to un-break IE8 support

Bug: T118242
Change-Id: I8db627c54e3567afd6e0000840c2b02e0af71eb8

8 years agoMerge "Fix conflicting configuration name in TitleInputWidget"
jenkins-bot [Thu, 19 Nov 2015 21:45:18 +0000 (21:45 +0000)]
Merge "Fix conflicting configuration name in TitleInputWidget"

8 years agoMerge "TitleSearchWidget: Use OO.ui.mixin.RequestManager"
jenkins-bot [Thu, 19 Nov 2015 21:32:48 +0000 (21:32 +0000)]
Merge "TitleSearchWidget: Use OO.ui.mixin.RequestManager"

8 years agoMerge "Reduce usage of inline <span style="white-space: nowrap">"
jenkins-bot [Thu, 19 Nov 2015 21:32:44 +0000 (21:32 +0000)]
Merge "Reduce usage of inline <span style="white-space: nowrap">"

8 years agoFix conflicting configuration name in TitleInputWidget
Florian [Thu, 19 Nov 2015 21:21:15 +0000 (22:21 +0100)]
Fix conflicting configuration name in TitleInputWidget

config.validate is already given and used in OO.ui.TextInputWidget to
define a string/regex/method where a query is checked against. TitleInputWidget
would override it with a config option to enable/disable this check.

The config option "validate" uses the "validateTitle" name, now. There was
no usage so far.

Follow up: I732a2f56a2375d8c708e3b295996187ee209f1a6

Bug: T119075
Change-Id: Ibb47b20506d21213fc9681b6aa919ce45505e474

8 years agoMerge "SpecialWatchlist: Keep checkboxes and their labels together"
jenkins-bot [Thu, 19 Nov 2015 21:21:53 +0000 (21:21 +0000)]
Merge "SpecialWatchlist: Keep checkboxes and their labels together"

8 years agoReduce usage of inline <span style="white-space: nowrap">
Bartosz Dziewoński [Thu, 19 Nov 2015 20:34:27 +0000 (21:34 +0100)]
Reduce usage of inline <span style="white-space: nowrap">

Inspired by T119055.

Change-Id: I6829a67fb77c00e87772983f35b884bf03fad7e3

8 years agoSpecialWatchlist: Keep checkboxes and their labels together
Bartosz Dziewoński [Thu, 19 Nov 2015 20:31:16 +0000 (21:31 +0100)]
SpecialWatchlist: Keep checkboxes and their labels together

Style added to shared.css, since I intend to reuse it elsewhere.
We have a lot of inline style="white-space: nowrap;" in some places.

Bug: T119055
Change-Id: If6cfcaac070cd51a93c078248b65020ae81d94f2

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 19 Nov 2015 20:10:44 +0000 (21:10 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Idd9602752f2328fef651d992a02b7f5315cf0cf8

8 years agoTitleSearchWidget: Use OO.ui.mixin.RequestManager
David Lynch [Wed, 11 Nov 2015 22:54:53 +0000 (14:54 -0800)]
TitleSearchWidget: Use OO.ui.mixin.RequestManager

Get that request management goodness that only LookupWidgets used to
benefit from. We can undo the earlier hacky fix to avoid requests
overrunning each other as part of this.

Bug: T114175
Change-Id: I6ff686b3b157d23ff534357ce25ebcb4ef7efea1

8 years agoMerge "TOC: Restore missing underlines in Firefox"
jenkins-bot [Thu, 19 Nov 2015 16:43:45 +0000 (16:43 +0000)]
Merge "TOC: Restore missing underlines in Firefox"

8 years agoTOC: Restore missing underlines in Firefox
Fomafix [Fri, 6 Nov 2015 20:27:34 +0000 (20:27 +0000)]
TOC: Restore missing underlines in Firefox

According to <http://www.w3.org/TR/css-text-decor-3/#line-decoration>,
text decorations are not propagated to the contents of inline blocks
and inline tables, and 'display: table-cell' generates an inline table
when used without any parent table-rows and tables.

Firefox currently seems to be the only browser handling this correctly,
see <https://bugzilla.mozilla.org/show_bug.cgi?id=1222703>.

This is a follow-up to c7894deb.

Bug: T92481
Change-Id: Iae4a1e6fd30be950f0f1c40f47b4d2483002fe72

8 years agoMerge "HTMLForm: Do not render hidden elements as elements"
jenkins-bot [Thu, 19 Nov 2015 16:28:05 +0000 (16:28 +0000)]
Merge "HTMLForm: Do not render hidden elements as elements"

8 years agoAdd a new message key on watchlist for "Hide"
Raimond Spekking [Thu, 19 Nov 2015 13:56:04 +0000 (13:56 +0000)]
Add a new message key on watchlist for "Hide"

The older message key "hide" is used on many places, often inline
But this new message is used as first word of a line and at least in
German it needs a capital letter in the translation

Change-Id: I26ed976d89d1dc9759abf22f6d39b77d26c68731

8 years agoMerge "mediawiki.jqueryMsg: Extend mw.Message with new #parseDom method"
jenkins-bot [Thu, 19 Nov 2015 08:06:51 +0000 (08:06 +0000)]
Merge "mediawiki.jqueryMsg: Extend mw.Message with new #parseDom method"

8 years agoMerge "Improve docs for lag related DB functions"
jenkins-bot [Thu, 19 Nov 2015 07:33:19 +0000 (07:33 +0000)]
Merge "Improve docs for lag related DB functions"

8 years agoMerge "SquidUpdate doc cleanups"
jenkins-bot [Thu, 19 Nov 2015 07:23:53 +0000 (07:23 +0000)]
Merge "SquidUpdate doc cleanups"

8 years agoMerge "phpcs: Assignment expression not allowed"
jenkins-bot [Thu, 19 Nov 2015 03:28:40 +0000 (03:28 +0000)]
Merge "phpcs: Assignment expression not allowed"

8 years agoImprove docs for lag related DB functions
Aaron Schulz [Thu, 19 Nov 2015 02:23:03 +0000 (18:23 -0800)]
Improve docs for lag related DB functions

* They can return false if replication is stopped.
* Also remove redundant related doc blocks.

Change-Id: I40a1cb2da2f23815b9da8f79195df45c5e510585

8 years agomediawiki.jqueryMsg: Extend mw.Message with new #parseDom method
Bartosz Dziewoński [Tue, 3 Nov 2015 23:48:11 +0000 (00:48 +0100)]
mediawiki.jqueryMsg: Extend mw.Message with new #parseDom method

Unlike #parse, this one returns a jQuery set of DOM nodes and not a
HTML string, for two benefits:

* Allows to skip unnecessary HTML serialization and reconstruction
  when we just want to insert the message contents somewhere.

  Old way:
    $( '#foo' ).html( mw.message( 'foo' ).parse() );
  New way:
    $( '#foo' ).append( mw.message( 'foo' ).parseDom() );

  This is roughly equivalent to the old alternative:
    $( '#foo' ).msg( 'foo' );
  But that way can't be used if you start with a mw.Message object, or
  don't yet know where the elements will be inserted.

* Allows to preserve the event handlers when a function is passed as
  message parameter.

    mw.messages.set( 'foo', '[$1 Click me!]' );
    $( '#foo' ).append( mw.message( 'foo', function () {
      console.log( 'Link clicked!' );
    } ).parseDom() );

Change-Id: Ia09131c2ffc1d149ca6b1c32dcd918a539c3a719

8 years agonamespaceDupes: Ignore duplicate key errors in link table updates
Roan Kattouw [Thu, 19 Nov 2015 00:24:17 +0000 (16:24 -0800)]
namespaceDupes: Ignore duplicate key errors in link table updates

Bug: T115824
Change-Id: I67f57f680587c2c1e00f63a268019270bf8d5f86

8 years agoSquidUpdate doc cleanups
Aaron Schulz [Thu, 19 Nov 2015 00:07:29 +0000 (16:07 -0800)]
SquidUpdate doc cleanups

Change-Id: Ia5b8060e8a93f40a2e31272e043b225f59fb6d50

8 years agoMerge "Race condition fixes for refreshLinks jobs"
jenkins-bot [Wed, 18 Nov 2015 22:41:18 +0000 (22:41 +0000)]
Merge "Race condition fixes for refreshLinks jobs"

8 years agoMerge "Allow findHooks.php to compare parameter references of hooks"
jenkins-bot [Wed, 18 Nov 2015 21:27:49 +0000 (21:27 +0000)]
Merge "Allow findHooks.php to compare parameter references of hooks"

8 years agoMerge "Allow findHooks.php to compare parameter count of hooks"
jenkins-bot [Wed, 18 Nov 2015 21:17:20 +0000 (21:17 +0000)]
Merge "Allow findHooks.php to compare parameter count of hooks"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 18 Nov 2015 20:42:58 +0000 (21:42 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I8aa21270c652b0d3818b6f45e44112f8a2982955

8 years agophpcs: Assignment expression not allowed
umherirrender [Wed, 18 Nov 2015 18:32:05 +0000 (19:32 +0100)]
phpcs: Assignment expression not allowed

Fix some "Assignment expression not allowed"

Found by tests:
https://integration.wikimedia.org/ci/job/mediawiki-core-phpcs/2736/consoleFull

Change-Id: Ibfc62b0aaa5c7fa63081edea3ef2b4d0dc984f85

8 years agomediawiki.api: Use action=query&meta=tokens instead of action=tokens
Timo Tijhof [Wed, 15 Oct 2014 20:48:35 +0000 (20:48 +0000)]
mediawiki.api: Use action=query&meta=tokens instead of action=tokens

Follows-up aacdb664a1, which was reverted.

API action=query&meta=tokens has different token types than the old
action=tokens values. Use a map to maintain support in the JavaScript API for
old token types that now fold into the generic 'csrf'.

Aside from core token types, those added by extensions are no longer
actively used from the old token API.

Bug: T72059
Change-Id: Iec3a9f0f51d64d90c81a147cc18097dcf679c7c9

8 years agoAllow findHooks.php to compare parameter references of hooks
umherirrender [Wed, 14 Oct 2015 19:36:08 +0000 (21:36 +0200)]
Allow findHooks.php to compare parameter references of hooks

Check if all hooks in hooks.txt have a &, if the code also have & and
the other way round.

Fix all hooks in hooks.txt to have a clean run of the script.

Change-Id: I1b45253e20dc310e825cdc17e0e2e9c8fb315bab

8 years agoAPI: Remove dbg, txt, and yaml formats
Brad Jorsch [Thu, 12 Nov 2015 17:58:46 +0000 (12:58 -0500)]
API: Remove dbg, txt, and yaml formats

Per RFC: https://www.mediawiki.org/wiki/Requests_for_comment/Ditch_crappy_API_formats

Bug: T95715
Change-Id: I8e4e9ad3c96504cf4587cb4632504eff21b5ff75

8 years agoMerge "Use $foo.msg( 'bar' ) rather than $foo.html( mw.message( 'bar' ).parse() )"
jenkins-bot [Wed, 18 Nov 2015 13:49:41 +0000 (13:49 +0000)]
Merge "Use $foo.msg( 'bar' ) rather than $foo.html( mw.message( 'bar' ).parse() )"

8 years agoAllow findHooks.php to compare parameter count of hooks
umherirrender [Sun, 20 Sep 2015 09:40:53 +0000 (11:40 +0200)]
Allow findHooks.php to compare parameter count of hooks

All wrong hook documentation gets fixed with own patch sets:
https://gerrit.wikimedia.org/r/#/q/project:mediawiki/core+branch:master+topic:hooksdoc,n,z
and Iae0285b1a39cf851aaaa735cb22e95c839813997

Change-Id: I5991c4f0ff3ed1fbad18a38169a62d406bf4d105

8 years agoMerge "profileinfo: Suppress frivolous warning about usort callback"
jenkins-bot [Wed, 18 Nov 2015 04:14:06 +0000 (04:14 +0000)]
Merge "profileinfo: Suppress frivolous warning about usort callback"

8 years agoMerge "Use makeGlobalKey() directly instead of wfGlobalCacheKey()"
jenkins-bot [Wed, 18 Nov 2015 03:20:17 +0000 (03:20 +0000)]
Merge "Use makeGlobalKey() directly instead of wfGlobalCacheKey()"

8 years agoprofileinfo: Suppress frivolous warning about usort callback
Timo Tijhof [Wed, 18 Nov 2015 01:24:20 +0000 (01:24 +0000)]
profileinfo: Suppress frivolous warning about usort callback

When sorting the profile output by a column (e.g. ms/call) the
following error appears:

> PHP Warning:
> usort(): Array was modified by the user comparison function at profileinfo.php:439

This is a known bug in PHP where usage of certain debug features
can cause usort() to detect reference count change and wrongly
claim that the object was changed.

Change-Id: I89ec0149aae46f51de647cdf6c6d645c45cbc185

8 years agoUpdate OOjs UI to v0.13.3
James D. Forrester [Wed, 18 Nov 2015 01:25:01 +0000 (17:25 -0800)]
Update OOjs UI to v0.13.3

Release notes:
 https://git.wikimedia.org/blob/oojs%2Fui.git/v0.13.3/History.md

Change-Id: If131ec0d7663d6493f23b00c9451544767b7807a

8 years agoUse makeGlobalKey() directly instead of wfGlobalCacheKey()
Timo Tijhof [Wed, 18 Nov 2015 00:21:02 +0000 (00:21 +0000)]
Use makeGlobalKey() directly instead of wfGlobalCacheKey()

Saves a small trip through ObjectCache::getLocalClusterInstance(),
call_user_func_array, and func_get_args.

Change-Id: If5d2170accaecb6cc8c0520ab9de9241b42a4727

8 years agoMerge "ForeignStructuredUpload.BookletLayout: Add direct dependency on 'moment'"
jenkins-bot [Tue, 17 Nov 2015 23:49:42 +0000 (23:49 +0000)]
Merge "ForeignStructuredUpload.BookletLayout: Add direct dependency on 'moment'"

8 years agomediawiki.action.edit.preview: Remove ref to non-existant 'tooltip-p-lang' message
Timo Tijhof [Tue, 17 Nov 2015 22:58:58 +0000 (22:58 +0000)]
mediawiki.action.edit.preview: Remove ref to non-existant 'tooltip-p-lang' message

This message does not exist in MediaWiki core. And even if one creates it locally,
it is not used by MediaWiki.

It is used for the p-logo link (not the section). And for individual links in
the toolbox and other portlet sections. But not for the sections themselves,
those only have labels (typically rendered as <h3> or something).

This reference was spamming logs with:
> [resourceloader] MessageBlobStore::fetchMessage failed to find tooltip-p-lang (en)

Change-Id: Ie1420230dc0857c1e38641697098b4adb2b28afb

8 years agoMerge "resourceloader: Include 'raw' in ResourceLoaderContext hash"
jenkins-bot [Tue, 17 Nov 2015 22:54:34 +0000 (22:54 +0000)]
Merge "resourceloader: Include 'raw' in ResourceLoaderContext hash"

8 years agoMerge "resourceloader: Reformat code around member grouping in ResourceLoaderContext"
jenkins-bot [Tue, 17 Nov 2015 22:54:29 +0000 (22:54 +0000)]
Merge "resourceloader: Reformat code around member grouping in ResourceLoaderContext"

8 years agoForeignStructuredUpload.BookletLayout: Add direct dependency on 'moment'
Ed Sanders [Tue, 17 Nov 2015 22:50:37 +0000 (14:50 -0800)]
ForeignStructuredUpload.BookletLayout: Add direct dependency on 'moment'

Change-Id: I4ed1ac988ba7b3aaebee884f662f4d16b09784cc

8 years agoMerge "Have SquidUpdate::newFromTitles use getSquidURLs"
jenkins-bot [Tue, 17 Nov 2015 22:33:56 +0000 (22:33 +0000)]
Merge "Have SquidUpdate::newFromTitles use getSquidURLs"

8 years agoMerge "Remove deprecated wgRateLimitLog"
jenkins-bot [Tue, 17 Nov 2015 22:19:40 +0000 (22:19 +0000)]
Merge "Remove deprecated wgRateLimitLog"

8 years agoRemove deprecated wgRateLimitLog
Bryan Davis [Tue, 17 Nov 2015 21:55:42 +0000 (14:55 -0700)]
Remove deprecated wgRateLimitLog

Remove the backwards compatibility shims for $wgRateLimitLog which was
deprecated in 1.23 (I86131c4).

Change-Id: I771bbaff43b44d011bff81ddda4f35166ea5f77e

8 years agoresourceloader: Include 'raw' in ResourceLoaderContext hash
Timo Tijhof [Tue, 17 Nov 2015 21:15:24 +0000 (21:15 +0000)]
resourceloader: Include 'raw' in ResourceLoaderContext hash

This parameter was introduced last year as a way to extract
bare scripts from modules without any 'mw.loader.state()' suffix.

When ResourceFileCache is used ($wgUseFileCache) this causes
cache pollution as it didn't include getRaw() in the hash.

Change-Id: I7b9f9b6a5756777462395b911abafb62468cbefa

8 years agoresourceloader: Reformat code around member grouping in ResourceLoaderContext
Timo Tijhof [Tue, 17 Nov 2015 21:14:17 +0000 (21:14 +0000)]
resourceloader: Reformat code around member grouping in ResourceLoaderContext

* No effective change. Only code reformatting.
* Logically group related members.
* Break up items one per line in getHash().

Change-Id: I8ccbe9d071a5c39f5c3d36d0d990574fb0ed8d72

8 years agoresourceloader: Omit getDirection() ResourceLoaderContext hash
Timo Tijhof [Tue, 17 Nov 2015 21:11:19 +0000 (21:11 +0000)]
resourceloader: Omit getDirection() ResourceLoaderContext hash

The direction is derived from the language code, which is included
already. The method was added for convenience to consuming code,
but including it in the cache key seems pointless.

Main rationale here is runtime performance. getDirection() incurs
Language::factory() and Language::getDir() which require loading
of LCStore files.

Change-Id: I397a1c483203ec2c4903046c9494cae1c9480f8c

8 years agoMerge "Make JobRunner::commitMasterChanges() check getServerCount()"
jenkins-bot [Tue, 17 Nov 2015 21:04:29 +0000 (21:04 +0000)]
Merge "Make JobRunner::commitMasterChanges() check getServerCount()"

8 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Tue, 17 Nov 2015 20:36:52 +0000 (20:36 +0000)]
Merge "Localisation updates from https://translatewiki.net."

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 17 Nov 2015 20:35:11 +0000 (21:35 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I7c40855393bce690629651b89a29842c231cc90d

8 years agoFollows-up 3a252efa: Update docs around $wgUseLocalMessageCache
Timo Tijhof [Tue, 17 Nov 2015 20:04:50 +0000 (20:04 +0000)]
Follows-up 3a252efa: Update docs around $wgUseLocalMessageCache

MessageCache had its "local server" cache converted from file-based
to using APC. For installs without APC, this setting no longer
does anything.

Change-Id: I1e284b56cadaa0206ca60ecdb6a55360e1fa1935

8 years agoMerge "Remove redundant null-handling for Title::newFromText"
jenkins-bot [Tue, 17 Nov 2015 19:21:59 +0000 (19:21 +0000)]
Merge "Remove redundant null-handling for Title::newFromText"

8 years agoMerge "Extract file name from thumbnail only from first occurrence"
jenkins-bot [Tue, 17 Nov 2015 19:11:44 +0000 (19:11 +0000)]
Merge "Extract file name from thumbnail only from first occurrence"

8 years agoMerge "MessageCache: Remove $ucfirst and clean up getMessageFromFallbackChain()"
jenkins-bot [Tue, 17 Nov 2015 19:03:39 +0000 (19:03 +0000)]
Merge "MessageCache: Remove $ucfirst and clean up getMessageFromFallbackChain()"

8 years agoMessageCache: Remove $ucfirst and clean up getMessageFromFallbackChain()
Timo Tijhof [Tue, 17 Nov 2015 17:51:37 +0000 (17:51 +0000)]
MessageCache: Remove $ucfirst and clean up getMessageFromFallbackChain()

The $ucfirst and $wgContentLang variables are not used by get().
Keep these inside getMessageFromFallbackChain() instead.

Also add mark getMsgFromNamespace() as public since it is used
in other places in core and by extensions.

Change-Id: I83bf77c17aa46f3929f89c4af97693611761629b

8 years agoAdd structured API request debug logging
Erik Bernhardson [Wed, 23 Sep 2015 23:37:06 +0000 (16:37 -0700)]
Add structured API request debug logging

Add a new "ApiRequest" PSR-3 logging channel for messages that describe
an Action API request as structured data. This logging channel can be
routed to a storage service to facilitate analysis of the requests.

The logging context is designed to match the following avro schema:

  {
      "type": "record",
      "name": "ApiRequest",
      "namespace": "org.wikimedia.mediawiki.api",
      "doc": "Describes an API request made via mediawiki ApiMain",
      "fields": [
          { "name": "dt",              "type": "string" },
          { "name": "client_ip",       "type": "string" },
          { "name": "user_agent",      "type": "string" },
          { "name": "wiki",            "type": "string" },
          { "name": "time_backend_ms", "type": "int" },
          { "name": "params",          "type": {
              "type": "map", "values": "string"
          } }
      ]
  }

Co-Author: Bryan Davis <bd808@wikimedia.org>
Bug: T108618
Change-Id: I38f5cdb288f332f75adca8a2d03fbe0fc36ab936

8 years agophpunit: Omit long xdiff test provider from Jenkins output
Timo Tijhof [Tue, 17 Nov 2015 02:01:16 +0000 (02:01 +0000)]
phpunit: Omit long xdiff test provider from Jenkins output

In PHPUnit v4.3 and higher one could call markTestSkipped() from
inside a data provider.

Bug: T43683
Change-Id: Ic5f9f4c715466e3998af76ad98543aeb9c5d396e

8 years agoMake JobRunner::commitMasterChanges() check getServerCount()
Aaron Schulz [Tue, 17 Nov 2015 04:37:42 +0000 (20:37 -0800)]
Make JobRunner::commitMasterChanges() check getServerCount()

This is a sanity check to avoid problems in waitForOne()

Change-Id: I9792ea8fb69d560bd4adb9bd01515f6456b7e9f3

8 years agoresourceloader: Centralise expected version hash for blank test modules
Timo Tijhof [Tue, 17 Nov 2015 04:22:15 +0000 (04:22 +0000)]
resourceloader: Centralise expected version hash for blank test modules

To avoid repeating this too much and make it easier to update when
underlying components incorporated into the version hash change.

Change-Id: I986988c07f5f888046b1d93c7e72f2e9585893cf

8 years agoobjectcache: Implement check keys per cache key in WANObjectCache::getMulti()
Timo Tijhof [Mon, 16 Nov 2015 21:41:10 +0000 (21:41 +0000)]
objectcache: Implement check keys per cache key in WANObjectCache::getMulti()

To allow batch queries for multiple keys that themselves have different check
keys. Previously check keys always applied to all keys being retrieved.

Change-Id: I9e5ba198d79020ce05a802a510762e29fcfb2f1b

8 years agoMerge "resourceloader: Use 'phpunit' instead of 'test' as default target in PHPUnit...
jenkins-bot [Tue, 17 Nov 2015 04:15:09 +0000 (04:15 +0000)]
Merge "resourceloader: Use 'phpunit' instead of 'test' as default target in PHPUnit tests"

8 years agoresourceloader: Use 'phpunit' instead of 'test' as default target in PHPUnit tests
Timo Tijhof [Tue, 17 Nov 2015 03:55:19 +0000 (03:55 +0000)]
resourceloader: Use 'phpunit' instead of 'test' as default target in PHPUnit tests

Follows-up e9b9e4df7a5, which started using target=test as reserved for
Special:JavaScriptTest. However that conflicted with this.

Without this change, the unit tests fail if the MediaWiki install has
$wgEnableJavaScriptTest enabled.

Change-Id: I471017e7aedb74dddb4dc18ee4e89c1706ff09b5

8 years agoobjectcache: Add more WAN cache check key unit tests
Aaron Schulz [Tue, 17 Nov 2015 00:13:37 +0000 (16:13 -0800)]
objectcache: Add more WAN cache check key unit tests

Change-Id: If9bfef463b294391a456c5f04f48858f9dbe73fd

8 years agoMerge "objectcache: Add more @covers to WANObjectCache unit tests"
jenkins-bot [Tue, 17 Nov 2015 03:26:09 +0000 (03:26 +0000)]
Merge "objectcache: Add more @covers to WANObjectCache unit tests"

8 years agoMerge "Reduce updateLinksTimestamp() DB contention"
jenkins-bot [Tue, 17 Nov 2015 02:53:03 +0000 (02:53 +0000)]
Merge "Reduce updateLinksTimestamp() DB contention"

8 years agoRemove vendor prefix support for SVG embedding
Ed Sanders [Tue, 17 Nov 2015 02:25:59 +0000 (18:25 -0800)]
Remove vendor prefix support for SVG embedding

Also remove the -o- prefix which uses 'fallback', as without
that rule it will use 'fallback' anyway.

Bug: T118815
Change-Id: I6a6e3b24b1cda55dfa9675743c39d21e792275c7

8 years agoReduce updateLinksTimestamp() DB contention
Aaron Schulz [Thu, 12 Nov 2015 20:46:45 +0000 (12:46 -0800)]
Reduce updateLinksTimestamp() DB contention

Do the LinksUpdateComplete hook updates in a separate
transaction as they may do slow SELECTs and updates.

A large amount of DBPerformance warnings were triggered
by such cases.

Bug: T95501
Change-Id: Ie4e6b7f6aefc21bafba270282c55571ff5385fe0

8 years agoRemove redundant null-handling for Title::newFromText
Timo Tijhof [Tue, 17 Nov 2015 01:53:30 +0000 (01:53 +0000)]
Remove redundant null-handling for Title::newFromText

* Linker: Follows-up 9ce5ca9886. null is already handled.

* PrefixSearch: Follows-up 337b1e2e. null is already handled.
  If other types are bassed, we want to find these.

* UploadBase: Follows-up 11f5ebec28. null is already handled.
  WebRequest::getVal($name) can only return string or null.

Change-Id: I3dc3b700cde735f5cd9d497f0867a2b4e3b61f46

8 years agoMerge "Revert "Avoid doNotifyQueueEmpty() race conditions for Redis""
jenkins-bot [Tue, 17 Nov 2015 01:32:21 +0000 (01:32 +0000)]
Merge "Revert "Avoid doNotifyQueueEmpty() race conditions for Redis""

8 years agoAdd 'mobile' target to 'mediawiki.raggett' module
Kunal Mehta [Tue, 17 Nov 2015 00:49:45 +0000 (16:49 -0800)]
Add 'mobile' target to 'mediawiki.raggett' module

Bug: T49673
Change-Id: I7c360738e205e90856dfbdc4597123bc961e3c89

8 years agoMerge "phpcs: Assignment expression not allowed"
jenkins-bot [Mon, 16 Nov 2015 23:22:31 +0000 (23:22 +0000)]
Merge "phpcs: Assignment expression not allowed"

8 years agoDon't claim model validation failed if the content couldn't be loaded
Marius Hoch [Mon, 16 Nov 2015 22:13:55 +0000 (23:13 +0100)]
Don't claim model validation failed if the content couldn't be loaded

Also include the corresponding revision id in the exception message.

Bug: T118747
Change-Id: If3e5694f8b471045cf62d672f414446cf5365ed5

8 years agoobjectcache: Add more @covers to WANObjectCache unit tests
Timo Tijhof [Mon, 16 Nov 2015 21:48:47 +0000 (21:48 +0000)]
objectcache: Add more @covers to WANObjectCache unit tests

Has only ~ 30% coverage according to PHPUnit, but mostly due to
lack of @covers annotations.

Change-Id: I871b45d8d8ee22c7cda644c450d78f577584e78c

8 years agoRace condition fixes for refreshLinks jobs
Aaron Schulz [Sat, 14 Nov 2015 01:44:49 +0000 (17:44 -0800)]
Race condition fixes for refreshLinks jobs

* Use READ_LATEST when needed to distinguish slave lag
  affecting new pages from page deletions that happened
  after the job was pushed. Run-of-the-mill mass backlink
  updates still typically use "masterPos" and READ_NORMAL.
* Search for the expected revision (via READ_LATEST)
  for jobs triggered by direct page edits. This avoids lag
  problems for edits to existing pages.
* Added a CAS-style check to avoid letting jobs clobber
  the work of other jobs that saw a newer page version.
* Rename and expose WikiPage::lock() method.
* Split out position wait logic to a separate protected
  method and made sure it only got called once instead of
  per-title (which didn't do anything). Note that there is
  normally 1 title per job in any case.
* Add FIXME about a related race-conditions.

Bug: T117332
Change-Id: Ib3fa0fc77040646b9a4e5e4b3dc9ae3c51ac29b3

8 years agoMerge "Improve error message if check not defined for a password policy."
jenkins-bot [Mon, 16 Nov 2015 21:05:39 +0000 (21:05 +0000)]
Merge "Improve error message if check not defined for a password policy."

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 16 Nov 2015 21:00:52 +0000 (22:00 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I0be21ef9182ea4424b4bf4f415240e0ec363f975

8 years agophpcs: Assignment expression not allowed
umherirrender [Thu, 12 Nov 2015 19:07:59 +0000 (20:07 +0100)]
phpcs: Assignment expression not allowed

Fix some "Assignment expression not allowed"

Found by tests:
https://integration.wikimedia.org/ci/job/mediawiki-core-phpcs/2736/consoleFull

Change-Id: I9bc2eff20a317a74671acd49749bb336a0fd9f67

8 years agoImprove error message if check not defined for a password policy.
Reedy [Mon, 16 Nov 2015 20:47:15 +0000 (20:47 +0000)]
Improve error message if check not defined for a password policy.

Bug: T118776
Change-Id: Ic1826f15424197545f4d6c2b1af49adbc4289e15

8 years agoMerge "Allow a TitleInputWidget user to decide, if an empty value should be validated"
jenkins-bot [Mon, 16 Nov 2015 18:40:00 +0000 (18:40 +0000)]
Merge "Allow a TitleInputWidget user to decide, if an empty value should be validated"

8 years agoAllow a TitleInputWidget user to decide, if an empty value should be validated
Florian [Thu, 12 Nov 2015 17:31:57 +0000 (18:31 +0100)]
Allow a TitleInputWidget user to decide, if an empty value should be validated

For some use cases an empty value is valid, too, or at least, it's not a reason to
mark the form input red. Special:Search, e.g.. This change implements a new config
for MediaWiki\Widgets\TitleInputWidget, validate, which allows a user of this
widget to decide, if the value of the input type should be validated (empty -> flagged
red).

Extra points:
 * Fix php notice errors for previously added configuration
 * Added doc for previously added configuration

Bug: T106946
Change-Id: I732a2f56a2375d8c708e3b295996187ee209f1a6

8 years agoApiFeedWatchlist: Set messages for param-per-value too when copying from ApiQueryWatc...
Brad Jorsch [Mon, 16 Nov 2015 15:26:39 +0000 (10:26 -0500)]
ApiFeedWatchlist: Set messages for param-per-value too when copying from ApiQueryWatchlist

Bug: T118675
Change-Id: I9244a177716d4bbe8c011fd7c374e125552ea531

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 15 Nov 2015 20:56:14 +0000 (21:56 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I13ff9d21bd07513cf26dfddbce091418c62d38e7

8 years agoMerge "phpcs: Use __DIR__ constant instead of calling"
jenkins-bot [Sun, 15 Nov 2015 20:30:53 +0000 (20:30 +0000)]
Merge "phpcs: Use __DIR__ constant instead of calling"

8 years agoMake JobQueueAggregator::doNotifyQueueNonEmpty() avoid queries
Aaron Schulz [Wed, 11 Nov 2015 21:50:35 +0000 (13:50 -0800)]
Make JobQueueAggregator::doNotifyQueueNonEmpty() avoid queries

Avoid 2 of the 3 queries in doNotifyQueueNonEmpty(), the ones
that register the queue, once such a command has been done in
the request already.

Change-Id: I58553f0c56660f05a3e3000065270baebb8cbb62

8 years agophpcs: Use __DIR__ constant instead of calling
umherirrender [Thu, 12 Nov 2015 18:58:20 +0000 (19:58 +0100)]
phpcs: Use __DIR__ constant instead of calling

Replaced all dirname(__FILE__) by __DIR__ or added
@codingStandardsIgnore

Found by tests:
https://integration.wikimedia.org/ci/job/mediawiki-core-phpcs/2736/consoleFull

Change-Id: I90ff10f183ed60175fe580c43d73c0e57fd04234

8 years agoClean up some wfDebug() calls in LoadBalancer
Aaron Schulz [Fri, 13 Nov 2015 08:07:14 +0000 (00:07 -0800)]
Clean up some wfDebug() calls in LoadBalancer

Change-Id: I01143bec5b084a32c3edd836d194c0a17ca0e43c

8 years agoMerge "Generalize the LinkCache clear() call to JobRunner"
jenkins-bot [Sun, 15 Nov 2015 06:52:12 +0000 (06:52 +0000)]
Merge "Generalize the LinkCache clear() call to JobRunner"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 14 Nov 2015 21:02:44 +0000 (22:02 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I71454ec5faa274e2b0e768a041c0a595009be4e0

8 years agoGeneralize the LinkCache clear() call to JobRunner
Aaron Schulz [Sat, 14 Nov 2015 13:17:23 +0000 (05:17 -0800)]
Generalize the LinkCache clear() call to JobRunner

The use for this logic is not specific to RefreshLinksJob

Change-Id: I4bb911ab5882d1795e12163df8ae6b227c58bc8a

8 years agoHave SquidUpdate::newFromTitles use getSquidURLs
Matthew Flaschen [Fri, 13 Nov 2015 21:54:41 +0000 (16:54 -0500)]
Have SquidUpdate::newFromTitles use getSquidURLs

This causes it to add history, and trigger the TitleSquidURLs hook.

Bug: T116095
Change-Id: I41ebd2f34347a3f218f7d0bfc8962d286b943c16

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 13 Nov 2015 20:16:30 +0000 (21:16 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I9891f7770ff4ccf0f12847c1e903a85cb030789a

8 years agoAdd i18n messages for API feedrecentchanges 'categories' and 'categories_any'
Brad Jorsch [Fri, 13 Nov 2015 14:55:21 +0000 (09:55 -0500)]
Add i18n messages for API feedrecentchanges 'categories' and 'categories_any'

Bug: T118515
Change-Id: I7ae7c474aacceea0346991882f1f44cc6c998c7d

8 years agoMerge "resourceloader: Update MessageBlobStore documentation and code cleanup"
jenkins-bot [Fri, 13 Nov 2015 06:30:20 +0000 (06:30 +0000)]
Merge "resourceloader: Update MessageBlobStore documentation and code cleanup"