5 years agoregistration: Allow protocol-relative links in "url" field
Kunal Mehta [Mon, 17 Jul 2017 17:13:49 +0000 (10:13 -0700)]
registration: Allow protocol-relative links in "url" field

Bug: T93010
Change-Id: I626fb5528b41910d859d8596a8ad350f94c1082e

5 years agoBump justinrainbow/json-schema development dependency to ~5.2
Kunal Mehta [Mon, 17 Jul 2017 17:12:55 +0000 (10:12 -0700)]
Bump justinrainbow/json-schema development dependency to ~5.2


Change-Id: I9e3aa67bcf1f4e7b6b0dc831c64df73ce0fea8fe

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 16 Jul 2017 19:59:08 +0000 (21:59 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ief7038a0c8b5e47b01b177e3a2cd7a472538f02d

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 15 Jul 2017 20:02:18 +0000 (22:02 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I9bd42f589285be09db8e45e5eb88966f430228d5

5 years agoMerge "resourceloader: Avoid mw-exception log spam from PHPUnit tests"
jenkins-bot [Sat, 15 Jul 2017 18:23:49 +0000 (18:23 +0000)]
Merge "resourceloader: Avoid mw-exception log spam from PHPUnit tests"

5 years agoMerge "New maintenance script to recalculate category membership counts"
jenkins-bot [Sat, 15 Jul 2017 08:02:20 +0000 (08:02 +0000)]
Merge "New maintenance script to recalculate category membership counts"

5 years agoNew maintenance script to recalculate category membership counts
This, that and the other [Thu, 26 Jan 2017 11:39:30 +0000 (22:39 +1100)]
New maintenance script to recalculate category membership counts

The category membership counts stored in the category table have a habit of
drifting away from the actual number of pages in the category. This script
identifies incorrectly-counted categories by performing a SELECT on the
replica DB, then querying master for up-to-date counts and updating the
category rows with those counts.

It's possible that a LinksUpdate job will be in progress while this script
is run. LinksUpdate does categorylinks INSERTs and category UPDATEs in
separate transactions, and our count might occur in between, leading to
category values that are slightly off. But since we are only updating
categories with already incorrect counts, we are not making the situation
any worse than it already was.

The script runs reasonably quickly on all but the very largest wikis.

Bug: T18765
Change-Id: I555f068fbf3aee20a7775d5532781f421f706346

5 years agomediawiki.toc: Migrate test from deprecated asyncTest()
Timo Tijhof [Tue, 11 Jul 2017 20:05:17 +0000 (13:05 -0700)]
mediawiki.toc: Migrate test from deprecated asyncTest()

Instead, use assert.async(), or (in this case) return the Promise directly
to QUnit.test, which will naturally await it.
As bonus, it'll handle errors, too. (instead of timing out)

Change-Id: I94ee0bf72a3d8ac2e588cd75cbe0787b5001d5b4

5 years agoresourceloader: Avoid mw-exception log spam from PHPUnit tests
Timo Tijhof [Thu, 13 Jul 2017 05:16:53 +0000 (22:16 -0700)]
resourceloader: Avoid mw-exception log spam from PHPUnit tests

Bug: T50002
Change-Id: Ida18f271883535eca2a1d26ee34120190914d87a

5 years agoMerge "mw.loader: Avoid use of deprecated QUnit.asyncTest/QUnit.start"
jenkins-bot [Sat, 15 Jul 2017 00:27:30 +0000 (00:27 +0000)]
Merge "mw.loader: Avoid use of deprecated QUnit.asyncTest/QUnit.start"

5 years agoMerge "Remove temporary hole in abstractions"
jenkins-bot [Sat, 15 Jul 2017 00:20:12 +0000 (00:20 +0000)]
Merge "Remove temporary hole in abstractions"

5 years agoRemove temporary hole in abstractions
Max Semenik [Fri, 14 Jul 2017 23:36:10 +0000 (16:36 -0700)]
Remove temporary hole in abstractions

Was introduced temprarily to facilitate event logging, now the only caller is gone.

Bug: T166247
Change-Id: I0f9cdccc6b3a566d9f7ebf02515f724348205071

5 years agoRCFilters: Allow experimental live update feature to be enabled with query string...
Roan Kattouw [Fri, 14 Jul 2017 21:35:48 +0000 (14:35 -0700)]
RCFilters: Allow experimental live update feature to be enabled with query string parameter

For testing. Adding ?liveupdate=1 to the URL will unhide the live update button.

Bug: T167743
Change-Id: I2696da959d34adf952f7f2fa6477ab756ef259bd

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 14 Jul 2017 20:01:37 +0000 (22:01 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I272241868eec5790ebc164f74b3d8f6982153776

5 years agoMerge "Add urlencode for URL encoding of lang values"
jenkins-bot [Fri, 14 Jul 2017 17:29:40 +0000 (17:29 +0000)]
Merge "Add urlencode for URL encoding of lang values"

5 years agoMerge "ChangesListSpecialPage: Don't short-circuit the ChangesList, instead format...
jenkins-bot [Fri, 14 Jul 2017 14:04:10 +0000 (14:04 +0000)]
Merge "ChangesListSpecialPage: Don't short-circuit the ChangesList, instead format zero rows"

5 years agoRCFilters: Scroll to top on view switch
Moriel Schottlender [Fri, 14 Jul 2017 01:04:52 +0000 (20:04 -0500)]
RCFilters: Scroll to top on view switch

Bug: T170651
Change-Id: I07376569397651ebee0815c1e1d6e945ef1704dc

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 13 Jul 2017 20:10:57 +0000 (22:10 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I3d1065d5b04461626dac32532b635373b28ade4f

5 years agoMerge "Special:ListUsers: Use HTMLForm and OOUI"
jenkins-bot [Thu, 13 Jul 2017 18:25:32 +0000 (18:25 +0000)]
Merge "Special:ListUsers: Use HTMLForm and OOUI"

5 years agomw.loader: Avoid use of deprecated QUnit.asyncTest/QUnit.start
Timo Tijhof [Tue, 11 Jul 2017 19:56:35 +0000 (12:56 -0700)]
mw.loader: Avoid use of deprecated QUnit.asyncTest/QUnit.start

Deprecated since QUnit 1.16, removed in QUnit 2.0. (We're on 1.23 currently.)

Migrate to assert.async().

This is a fairly atypical use of QUnit.start(), because it functions here
as a cross-script callback, where lexical scope cannot be used to share
the async() callback directly.

Other mw.loader tests already solved this by using a static callback instead
which inherits the lexical scope from the test to call done(). The old
'qunitOkCall' script is no longer used after this and thus removed.

Change-Id: I430df14b35a69c71df8685494d1379e22af0d6df

5 years agoMerge "Maintenance script to purge specific page"
jenkins-bot [Thu, 13 Jul 2017 02:18:22 +0000 (02:18 +0000)]
Merge "Maintenance script to purge specific page"

5 years agoMerge "HTMLUsersMultiselectField: Handle empty value properly"
jenkins-bot [Wed, 12 Jul 2017 21:31:07 +0000 (21:31 +0000)]
Merge "HTMLUsersMultiselectField: Handle empty value properly"

5 years agoMerge "RCFilters: Don't call ChangeTags::tagUsageStatistics() for now"
jenkins-bot [Wed, 12 Jul 2017 21:31:04 +0000 (21:31 +0000)]
Merge "RCFilters: Don't call ChangeTags::tagUsageStatistics() for now"

5 years agoMerge "SpecialUndelete: Follow-up to 6cf13604aec40e2210c16ccdbeba850de9428d19"
jenkins-bot [Wed, 12 Jul 2017 20:41:48 +0000 (20:41 +0000)]
Merge "SpecialUndelete: Follow-up to 6cf13604aec40e2210c16ccdbeba850de9428d19"

5 years agoSpecialUndelete: Follow-up to 6cf13604aec40e2210c16ccdbeba850de9428d19
Bartosz Dziewoński [Wed, 12 Jul 2017 20:17:10 +0000 (22:17 +0200)]
SpecialUndelete: Follow-up to 6cf13604aec40e2210c16ccdbeba850de9428d19

Per my (late) code review comments on that commit.

Change-Id: Ia5bb6410b430992b66f34274e86480e6c9566525

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 12 Jul 2017 20:07:50 +0000 (22:07 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ice8d28e7cb190e7c0b2ec4d95a3e3e2e835b17bb

5 years agoMerge "DeleteAction: Remove now-unnecessary RL modules"
jenkins-bot [Wed, 12 Jul 2017 19:55:16 +0000 (19:55 +0000)]
Merge "DeleteAction: Remove now-unnecessary RL modules"

5 years agoMerge "Fix cleanupTitles.php"
jenkins-bot [Wed, 12 Jul 2017 19:24:54 +0000 (19:24 +0000)]
Merge "Fix cleanupTitles.php"

5 years agoMerge "Convert rest of Special:Undelete to OOUI"
jenkins-bot [Wed, 12 Jul 2017 19:02:06 +0000 (19:02 +0000)]
Merge "Convert rest of Special:Undelete to OOUI"

5 years agoMerge "Give some idea of time remaining"
jenkins-bot [Wed, 12 Jul 2017 19:02:00 +0000 (19:02 +0000)]
Merge "Give some idea of time remaining"

5 years agoMerge "Advise extensions not to modify $wgWhitelistRead"
jenkins-bot [Wed, 12 Jul 2017 19:01:57 +0000 (19:01 +0000)]
Merge "Advise extensions not to modify $wgWhitelistRead"

5 years agoDeleteAction: Remove now-unnecessary RL modules
Bartosz Dziewoński [Wed, 12 Jul 2017 18:46:15 +0000 (20:46 +0200)]
DeleteAction: Remove now-unnecessary RL modules

After 97a8fb78faa4ca2d9604140e5547f5deae5a2524 these are never used.

Change-Id: Ibb4ee45ad991651afab0f0363056d3066e740b24

5 years agoMerge "FilterTagMultiselectWidget: Use frameless buttons and fix height issues"
jenkins-bot [Wed, 12 Jul 2017 18:45:34 +0000 (18:45 +0000)]
Merge "FilterTagMultiselectWidget: Use frameless buttons and fix height issues"

5 years agoConvert rest of Special:Undelete to OOUI
Ed Sanders [Thu, 11 May 2017 14:11:45 +0000 (15:11 +0100)]
Convert rest of Special:Undelete to OOUI

Also fix the 'invert selection' button:
* Don't use type=submit so it doesn't try to post
  if JS is disabled
* Don't invert the wpUnsuppress checkbox, just
  checkboxes in revision lists.

Bug: T113758
Change-Id: I84785a5ddcc3343d74b5b7addb4aa4817a469f33

5 years agoMerge "Convert article delete to use OOUI"
jenkins-bot [Wed, 12 Jul 2017 16:14:38 +0000 (16:14 +0000)]
Merge "Convert article delete to use OOUI"

5 years agoMerge "Convert Special:Undelete search form to use OOUI"
jenkins-bot [Wed, 12 Jul 2017 15:51:17 +0000 (15:51 +0000)]
Merge "Convert Special:Undelete search form to use OOUI"

5 years agoMerge "Use OO.ui.MultilineTextInputWidget"
jenkins-bot [Wed, 12 Jul 2017 15:19:13 +0000 (15:19 +0000)]
Merge "Use OO.ui.MultilineTextInputWidget"

5 years agoConvert Special:Undelete search form to use OOUI
Ed Sanders [Tue, 9 May 2017 19:10:09 +0000 (20:10 +0100)]
Convert Special:Undelete search form to use OOUI

Bug: T113758
Change-Id: I955a07a5903c37d5a054c7b2427c4ec0615a3c36

5 years agoMerge "Sanitizer: Allow attribute names to use any Unicode "Letter" or "Number""
jenkins-bot [Wed, 12 Jul 2017 15:13:19 +0000 (15:13 +0000)]
Merge "Sanitizer: Allow attribute names to use any Unicode "Letter" or "Number""

5 years agoUse OO.ui.MultilineTextInputWidget
Volker E [Wed, 12 Jul 2017 12:20:49 +0000 (14:20 +0200)]
Use OO.ui.MultilineTextInputWidget

Replacing deprecated OO.ui.TextInputWidget({multiline: true}) as of
OOjs UI v0.22.2 with OO.ui.MultilineTextInputWidget.
Also removing `multiline: false` since it is the default value.

Bug: T170275
Change-Id: Iad7c5bb32d7fb9c38b1781cce00eec8f1e99f6f2

5 years agoMerge "Add (hacky) check for webm audio files"
jenkins-bot [Wed, 12 Jul 2017 07:47:30 +0000 (07:47 +0000)]
Merge "Add (hacky) check for webm audio files"

5 years agoMerge "Add hook for cleaning up data that depends on purged recentchanges rows"
jenkins-bot [Wed, 12 Jul 2017 07:43:15 +0000 (07:43 +0000)]
Merge "Add hook for cleaning up data that depends on purged recentchanges rows"

5 years agoAdvise extensions not to modify $wgWhitelistRead
Kunal Mehta [Wed, 12 Jul 2017 01:30:33 +0000 (18:30 -0700)]
Advise extensions not to modify $wgWhitelistRead

Instead they should use the TitleReadWhitelist hook. I've seen this
pattern in multiple extensions now, each causing different problems, so
it should be explicitly documented.

Change-Id: I670b0acde660bdc27a6c7e91c4b1b3baeea8b2e5

5 years agoRCFilters: Don't call ChangeTags::tagUsageStatistics() for now
Roan Kattouw [Wed, 12 Jul 2017 01:01:09 +0000 (18:01 -0700)]
RCFilters: Don't call ChangeTags::tagUsageStatistics() for now

We need to fix its performance first, it currently takes >30s on wikidatawiki.
Fake all hit counts to be zero. Instead of sorting by hit count,
sort by display name.

Bug: T169997
Change-Id: I4075ea4d43a8f75e21a87a892211699ba3bc7058

5 years agoUpdate OOjs UI to v0.22.3
James D. Forrester [Tue, 11 Jul 2017 22:15:55 +0000 (15:15 -0700)]
Update OOjs UI to v0.22.3

Release notes:

Depends-On: If676bfab1d2040a9d360c741a5ab4e1c81b36b87
Change-Id: I684822b564663a94e03fc8b559617974502c8e52

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 11 Jul 2017 20:13:24 +0000 (22:13 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I7a1a699abbe0d0a35d753e9d8e29a292e4722b5f

5 years agoAdd (hacky) check for webm audio files
Mark Holmquist [Mon, 10 Jul 2017 17:39:36 +0000 (12:39 -0500)]
Add (hacky) check for webm audio files

If there is no video track in a webm file, it's supposed to be audio/webm,
but since we assume every webm file is video/webm, that's never worked.
This should slightly improve searching for audio files.

Bug: T156135
Change-Id: Iac749233e87b3622ff416ad503aedef3df0d0f1d

5 years agoHTMLUsersMultiselectField: Handle empty value properly
Roan Kattouw [Tue, 11 Jul 2017 18:29:17 +0000 (11:29 -0700)]
HTMLUsersMultiselectField: Handle empty value properly

If the string value is '' (empty string), the array
value should be [] (empty array), not [''] (array of one element
which is an empty string).

Bug: T169384
Change-Id: I558f3890af05efb6eaa18403467c0a05f44af12a

5 years agoMerge "Make label on Special:Undelete search reflect whether search is full-text...
jenkins-bot [Tue, 11 Jul 2017 18:06:52 +0000 (18:06 +0000)]
Merge "Make label on Special:Undelete search reflect whether search is full-text or prefix"

5 years agoMerge "Use OO.ui.MultilineTextInputWidget"
jenkins-bot [Tue, 11 Jul 2017 15:56:36 +0000 (15:56 +0000)]
Merge "Use OO.ui.MultilineTextInputWidget"

5 years agoUse OO.ui.MultilineTextInputWidget
Matthias Mullie [Tue, 11 Jul 2017 11:33:15 +0000 (13:33 +0200)]
Use OO.ui.MultilineTextInputWidget

Replace deprecated OO.ui.TextInputWidget({multiline: true}) as of
OOjs UI v0.22.2 with OO.ui.MultilineTextInputWidget

Bug: T170275
Change-Id: I8f310510a318fb943969fde2a366c08d88bda0e7

5 years agomw.loader: Log unknown modules in load() to console
Timo Tijhof [Sat, 8 Jul 2017 04:29:36 +0000 (21:29 -0700)]
mw.loader: Log unknown modules in load() to console

Follows-up If8ff31b530dfbd882. Now that we have resolveStubbornly,
we don't need to filter out unknown modules ahead of time.

Aside from removing the needless filter condition, it also has
the benefit of causing a message to be logged to the console,
which can help discover problems. Previously these were silently

Change-Id: I700db4931dfd0a412a8eca66c4a74b8831ab0086

5 years agoMerge "Make multiple colons escaping interlanguage links invalid, consistently"
jenkins-bot [Tue, 11 Jul 2017 15:19:17 +0000 (15:19 +0000)]
Merge "Make multiple colons escaping interlanguage links invalid, consistently"

5 years agoMerge "Resolve successful 1-chunk uploads"
jenkins-bot [Tue, 11 Jul 2017 13:23:46 +0000 (13:23 +0000)]
Merge "Resolve successful 1-chunk uploads"

5 years agoResolve successful 1-chunk uploads
Matthias Mullie [Tue, 11 Jul 2017 13:07:11 +0000 (15:07 +0200)]
Resolve successful 1-chunk uploads

Existing code would assume there's always more than one chunk,
or it would otherwise not resolve.

Upload dialog started doing chunked uploads recently:

Change-Id: I29a85c5ee6fbf6cea7d07e3281279b4ea3d87188

5 years agoMerge "Refactor UploadBase::checkWarnings into smaller methods"
jenkins-bot [Tue, 11 Jul 2017 05:53:17 +0000 (05:53 +0000)]
Merge "Refactor UploadBase::checkWarnings into smaller methods"

5 years agoMerge "RCFilters: Align TagItemWidget highlight in Safari"
jenkins-bot [Tue, 11 Jul 2017 00:56:39 +0000 (00:56 +0000)]
Merge "RCFilters: Align TagItemWidget highlight in Safari"

5 years agoMerge "Use shell_exec instead of backtick"
jenkins-bot [Tue, 11 Jul 2017 00:50:04 +0000 (00:50 +0000)]
Merge "Use shell_exec instead of backtick"

5 years agoMerge "RCFilters: Change legend heading for the beta feature"
jenkins-bot [Tue, 11 Jul 2017 00:47:59 +0000 (00:47 +0000)]
Merge "RCFilters: Change legend heading for the beta feature"

5 years agoRCFilters: Change legend heading for the beta feature
Moriel Schottlender [Mon, 10 Jul 2017 15:55:59 +0000 (10:55 -0500)]
RCFilters: Change legend heading for the beta feature

Bug: T168043
Change-Id: Ide56598b160c93e1dfa8019c0e6e99fb377ea311

5 years agoMerge "mw.loader: Skip modules in load() with unknown dependencies"
jenkins-bot [Tue, 11 Jul 2017 00:39:26 +0000 (00:39 +0000)]
Merge "mw.loader: Skip modules in load() with unknown dependencies"

5 years agoMerge "RCFilters: Add white background to legend"
jenkins-bot [Tue, 11 Jul 2017 00:25:55 +0000 (00:25 +0000)]
Merge "RCFilters: Add white background to legend"

5 years agoFix cleanupTitles.php
Max Semenik [Mon, 10 Jul 2017 22:07:07 +0000 (15:07 -0700)]
Fix cleanupTitles.php

It was failing in production with duplicate key error in
moveInconsistentPage(). Live-patching it to check for existence
for updates resolved the issues. Committing the fix now.

Change-Id: I1c0bf632b5040b44f5a49c8fb95779e7ed19dea9

5 years agoRCFilters: Add white background to legend
Moriel Schottlender [Mon, 10 Jul 2017 21:57:45 +0000 (16:57 -0500)]
RCFilters: Add white background to legend

Bug: T170190
Change-Id: Ib0fc1a492d8e6d431e73bc749178f19f25863965

5 years agoRCFilters: Respect ?enhanced=0 url regardless of preference
Moriel Schottlender [Mon, 10 Jul 2017 21:38:45 +0000 (16:38 -0500)]
RCFilters: Respect ?enhanced=0 url regardless of preference

Change-Id: Iffb8cc17b86c5358eea5ae904f55c88965ba4ee0

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 10 Jul 2017 20:02:31 +0000 (22:02 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I2d28957e14a7a90a5cba88bfe1a60060387d7cdc

5 years agoMerge "RCFilters: Only show 'no filters' when actually none were found"
jenkins-bot [Mon, 10 Jul 2017 19:22:15 +0000 (19:22 +0000)]
Merge "RCFilters: Only show 'no filters' when actually none were found"

5 years agoresourceloader: Add unit tests for ResourceLoaderSkinModule
Timo Tijhof [Sat, 8 Jul 2017 03:34:56 +0000 (20:34 -0700)]
resourceloader: Add unit tests for ResourceLoaderSkinModule

Change-Id: I299eff8f5172e047c0d54d9c824b17529dd6d190

5 years agoResourceLoaderSkinModule: Fix SkinStyles extending of known media queries
Timo Tijhof [Fri, 16 Jun 2017 19:25:41 +0000 (21:25 +0200)]
ResourceLoaderSkinModule: Fix SkinStyles extending of known media queries

If any of the styles given in its module definition (in the
'styles' or 'skinStyles' properties) used the same media queries
as the module's own CSS (e.g. 'all'), the module would fail with
"PHP Fatal error: [] operator not supported for strings" because
FileModule defaults to merging all the stylesheets into a single

Fix this by ensuring they are arrays before trying to extend them.

This previously made it impossible to use $wgResourceModuleSkinStyles
for modules that use SkinModule (instead of plain FileModule), such as
the 'mediawiki.skinning.interface' module.

Bug: T168088
Change-Id: I3effcaa4982728e707fbf9efeec4e5e78fc8aab6

5 years agoRCFilters: Only show 'no filters' when actually none were found
Moriel Schottlender [Mon, 10 Jul 2017 15:22:18 +0000 (10:22 -0500)]
RCFilters: Only show 'no filters' when actually none were found

Bug: T170161
Change-Id: I50da0d21e84d7e0582437dd43760c93ecb557a56

5 years agoAdd hook for cleaning up data that depends on purged recentchanges rows
Gergő Tisza [Mon, 1 May 2017 12:06:56 +0000 (12:06 +0000)]
Add hook for cleaning up data that depends on purged recentchanges rows

Adds RecentChangesPurgeRows hook which gets called in the same
transaction where old recentchanges rows are purged, and gets the
list of deleted rows. Extensions which store data for joining to
recentchanges can use this to purge their own data.

Bug: T159753
Change-Id: I03f1d485a1a3004412e0859d9d878b7895c95b40

5 years agoRemove auto-generated "Constructor" documentation on constructors
Thiemo Mättig [Wed, 5 Jul 2017 10:42:09 +0000 (12:42 +0200)]
Remove auto-generated "Constructor" documentation on constructors

Having such comments is worse than not having them. They add zero
information. But you must read the text to understand there is
nothing you don't already know from the class and the method name.

Change-Id: I994d11e05f202b880390723e148d79c72cca29f0

5 years agoSpecial:ListUsers: Use HTMLForm and OOUI
Prateek Saxena [Sun, 2 Jul 2017 11:28:42 +0000 (16:58 +0530)]
Special:ListUsers: Use HTMLForm and OOUI

Also update the hooks documentation. Now that it is using HTMLForm the
<fieldset> is closed before the submit button is added. The old code
was closing the <fieldset> after adding the submit button so the
documentatio made sense.

Bug: T111999
Change-Id: I109065100e40fef0c56a010c444de04a40950479

5 years agoUse <link rel="license"> instead of <link rel="copyright">
Fomafix [Wed, 7 Jun 2017 12:11:08 +0000 (14:11 +0200)]
Use <link rel="license"> instead of <link rel="copyright">

"copyright" is not in the list of the allowed values for the attribut rel:

Bug: T167284
Change-Id: I09205bb146001d1d1d90e6a0f25d21851f3f697c

5 years agoRename ckb to Kurdish
Amir Sarabadani [Tue, 27 Jun 2017 21:37:42 +0000 (02:07 +0430)]
Rename ckb to Kurdish

Bug: T116761
Change-Id: If5abc7c859c3fbf13e3ebf1be98693ee6fc04d9a

5 years agomw.loader: Skip modules in load() with unknown dependencies
Timo Tijhof [Sat, 8 Jul 2017 04:27:33 +0000 (21:27 -0700)]
mw.loader: Skip modules in load() with unknown dependencies

We already skip unknown modules at the top-level, but dependencies
still cause a run-time exception from sortDependencies, resulting
in the entire queue not being loaded.

Bug: T36853
Change-Id: If8ff31b530dfbd8823c47ffd827fcdba807c05b3

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 8 Jul 2017 19:58:21 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I7e6128d08d6a47a747d1d7732ae7df2beea3acce

5 years agoMerge "statsd: Rename MediawikiStatsdDataFactory to IBufferingStatsdDataFactory"
jenkins-bot [Sat, 8 Jul 2017 03:26:42 +0000 (03:26 +0000)]
Merge "statsd: Rename MediawikiStatsdDataFactory to IBufferingStatsdDataFactory"

5 years agoRCFilters: Only build tag list when experimental views are enabled
Roan Kattouw [Fri, 7 Jul 2017 22:36:13 +0000 (15:36 -0700)]
RCFilters: Only build tag list when experimental views are enabled

Follows-up 7725c755867ac1.

It's a waste otherwise, and buildChangeTagList() has perf issues.

Change-Id: Ifd7f81792fd7b5ee6e41ada756abbf0248f3eb36

5 years agoMerge "Autodiscover parser tests for extensions, deprecate $wgParserTestFiles"
jenkins-bot [Sat, 8 Jul 2017 01:01:15 +0000 (01:01 +0000)]
Merge "Autodiscover parser tests for extensions, deprecate $wgParserTestFiles"

5 years agoMerge "Use Sanitizer::stripAllTags( $x ) instead of html_entity_decode( strip_tags...
jenkins-bot [Sat, 8 Jul 2017 01:01:09 +0000 (01:01 +0000)]
Merge "Use Sanitizer::stripAllTags( $x ) instead of html_entity_decode( strip_tags( $x ) )"

5 years agoAutodiscover parser tests for extensions, deprecate $wgParserTestFiles
Kunal Mehta [Fri, 7 Jul 2017 22:26:21 +0000 (15:26 -0700)]
Autodiscover parser tests for extensions, deprecate $wgParserTestFiles

This implements autodiscovery of extension parser tests that are located
in the tests/parser/ directory. Any *.txt file in that directory tree
will be treated as a parser test.

Core parser tests are now defined in ParserTestRunner::$coreTestFiles,
and $wgParserTestFiles is marked as deprecated.

Bug: T143976
Change-Id: Ia24fd8ef52e6732c698153b17bb679a5f511a2a7

5 years agoMerge "SpecialRecentchanges: Globals for config are bad, m'kay"
jenkins-bot [Sat, 8 Jul 2017 00:31:52 +0000 (00:31 +0000)]
Merge "SpecialRecentchanges: Globals for config are bad, m'kay"

5 years agoMerge "RCFilters: Basic implementation of live updates"
jenkins-bot [Sat, 8 Jul 2017 00:28:22 +0000 (00:28 +0000)]
Merge "RCFilters: Basic implementation of live updates"

5 years agostatsd: Rename MediawikiStatsdDataFactory to IBufferingStatsdDataFactory
Timo Tijhof [Sat, 8 Jul 2017 00:19:39 +0000 (17:19 -0700)]
statsd: Rename MediawikiStatsdDataFactory to IBufferingStatsdDataFactory

Follows-up I2874175647e (7fdc3d09a3b).

* Avoid "MediaWiki" in class names. If unavoidable, always camelcase.
* Use a more descriptive name, matching the implementing the class ("Buffering").
* Use "I" prefix for consistency with other MediaWiki-provided interfaces.
  (Avoid "Interface" suffix, which is foreign to MediaWiki and is only used
  in the StatsdClient namespace, which this interface is not in).

Bug: T166354
Change-Id: I06de59122625f9c23e7c1a1bfa69a7ddabbf379e

5 years agoSpecialRecentchanges: Globals for config are bad, m'kay
James D. Forrester [Fri, 7 Jul 2017 23:01:17 +0000 (16:01 -0700)]
SpecialRecentchanges: Globals for config are bad, m'kay

Change-Id: I9ca7aead42ffee1e891525fc80f3438157f4fb2f

5 years agoRCFilters: Basic implementation of live updates
Roan Kattouw [Fri, 7 Jul 2017 18:15:29 +0000 (11:15 -0700)]
RCFilters: Basic implementation of live updates

Adds a live updates button that refreshes the changes list every 3 seconds.
For now this is pretty dumb in that it re-requests the entire list every time;
the next step would be to make it only load new changes using the &from=
query parameter.

Bug: T167743
Change-Id: Ic2ddea840e5c46f42b32ae4fff91138cacc28ec0

5 years agoUse Sanitizer::stripAllTags( $x ) instead of html_entity_decode( strip_tags( $x ) )
Roan Kattouw [Fri, 7 Jul 2017 23:35:07 +0000 (16:35 -0700)]
Use Sanitizer::stripAllTags( $x ) instead of html_entity_decode( strip_tags( $x ) )

We have a utility function for this, so let's use it.

What I don't understand though is why Sanitizer uses custom PHP implementations
for both tag stripping and entity decoding, instead of the built-in functions.
If there's a security reason for this or the built-ins are inadequate, that's
fine, but then that should be documented (and we should possibly ban usage
of the built-ins).

Change-Id: I2ba2ecd388cb3d9cd2360ecaa236f3d444f0eabf

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 7 Jul 2017 21:35:54 +0000 (23:35 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I43c7687a6be0a4b411287ccd2c3541c9edab5c30

5 years agoMerge "Fix font size / alignment of timestamps in enhanced recent changes"
jenkins-bot [Fri, 7 Jul 2017 19:34:23 +0000 (19:34 +0000)]
Merge "Fix font size / alignment of timestamps in enhanced recent changes"

5 years agoFix font size / alignment of timestamps in enhanced recent changes
Roan Kattouw [Fri, 7 Jul 2017 19:18:38 +0000 (12:18 -0700)]
Fix font size / alignment of timestamps in enhanced recent changes

font-family: monospace; causes the timestamps to have a smaller font size,
but font-family: monospace, monospace; doesn't.

Bug: T170010
Change-Id: I20a4ab12803d43e26ced429fe3b68939a1f2c13e

5 years agoMerge "Adjust Shortpages query with multiple content namespaces"
jenkins-bot [Fri, 7 Jul 2017 18:54:28 +0000 (18:54 +0000)]
Merge "Adjust Shortpages query with multiple content namespaces"

5 years agoMerge "Add Database::unionConditionPermutations()"
jenkins-bot [Fri, 7 Jul 2017 18:37:08 +0000 (18:37 +0000)]
Merge "Add Database::unionConditionPermutations()"

5 years agoMerge "mediawiki.UI: Remove deprecated `.mw-ui-constructive` class"
jenkins-bot [Fri, 7 Jul 2017 18:13:04 +0000 (18:13 +0000)]
Merge "mediawiki.UI: Remove deprecated `.mw-ui-constructive` class"

5 years agoMerge "SpecialNewFiles: Swap from/to date serverside"
jenkins-bot [Fri, 7 Jul 2017 16:16:32 +0000 (16:16 +0000)]
Merge "SpecialNewFiles: Swap from/to date serverside"

5 years agoSpecialNewFiles: Swap from/to date serverside
Matthias Mullie [Wed, 5 Jul 2017 10:12:16 +0000 (12:12 +0200)]
SpecialNewFiles: Swap from/to date serverside

Bug: T168695
Change-Id: I760096138da15a6f3b84a6db68ab5590f5a3e59b

5 years agoDocumentation: Fix return value of IDatabase::insertSelect()
Jesús Martínez Novo [Fri, 7 Jul 2017 10:58:21 +0000 (12:58 +0200)]
Documentation: Fix return value of IDatabase::insertSelect()

Implementation at Database returns bool, not IResultWrapper

Change-Id: Ic560bfcb45f0e9cd1f4e8334e3b5dfc4e682452a

5 years agoDisable VisualEditor welcome dialog when running Selenium tests
Željko Filipin [Wed, 5 Jul 2017 11:52:47 +0000 (13:52 +0200)]
Disable VisualEditor welcome dialog when running Selenium tests

Bug: T164721
Change-Id: I7b5f73c6fbaaa221ac1b689344f9015fb903220f

5 years agoMerge "Create users and pages for Selenium tests using action API"
jenkins-bot [Fri, 7 Jul 2017 05:11:26 +0000 (05:11 +0000)]
Merge "Create users and pages for Selenium tests using action API"

5 years agoCreate users and pages for Selenium tests using action API
Željko Filipin [Mon, 8 May 2017 10:10:18 +0000 (12:10 +0200)]
Create users and pages for Selenium tests using action API

This will make tests slightly more robust.

Bug: T164721
Bug: T167502
Change-Id: I9b2fea77b28af4f7f521490a0105e7d04730bc87