lhc/web/wiklou.git
4 years agoAllow the request ID to be passed in via the `X-Request-Id` header
Marko Obrovac [Mon, 22 Apr 2019 20:28:54 +0000 (13:28 -0700)]
Allow the request ID to be passed in via the `X-Request-Id` header

For tracing and logging purposes, we want to be able to see/generate the
list of all of the requests that happen in the environment for a given
external incoming request. To that end, allow Mediawiki to accept the
request ID provided by the incoming request as its own.

Since this may be problematic for set-ups that don't have an entity in
front of MW that sanitises the headers on the way in, introduce a new
global variable, `$wgAllowExternalReqID`, that can disable this
behaviour. By default, the feature is disabled.

Bug: T201409
Change-Id: I605471fb8b5bbc290baeecc7d80d9d715cb240c9

4 years agoDon't allow completing a partial stash upload
Matthias Mullie [Wed, 15 May 2019 07:13:15 +0000 (09:13 +0200)]
Don't allow completing a partial stash upload

finishUploadToStash could be called on an incomplete upload.
E.g. upload 1 chunk (that gets you the filekey) and then call
finishUploadToStash's finishUpload.

This adds another check for the stash result. The result will
only be 'Success' if all chunks have been submitted (or when
the file was uploaded as a whole, not chunked)
If we're still missing some chunks, result will be 'Continue'.

Bug: T190988
Change-Id: Ia0a4df0306b3e0cc0f2453f986b73bedd88241d3

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 14 May 2019 19:54:55 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ibd264a8b5ec69c0fa68d24cea424f78a49646171

4 years agoMerge "localisation: Inject 'directory' option to LCStore classes"
jenkins-bot [Tue, 14 May 2019 18:47:26 +0000 (18:47 +0000)]
Merge "localisation: Inject 'directory' option to LCStore classes"

4 years agojqueryMsg: Allow sneaking in non-qqx JavaScript messages in qqx mode
Bartosz Dziewoński [Tue, 14 May 2019 05:41:17 +0000 (07:41 +0200)]
jqueryMsg: Allow sneaking in non-qqx JavaScript messages in qqx mode

In commit bb084a35739e3f3c54c8680f756ebebb90e13f28 I assumed that
with uselang=qqx, any messages defined in JavaScript would be just
the message key wrapped in parentheses.

It turns out that extensions (e.g. VisualEditor) have been sneaking
in messages in content language using the system we assumed to only
contain messages in user language. This trick stopped working.

Detect this and return the real message, if it's defined.

Bug: T222944
Change-Id: I3f2a6ceb249402ef76e788c494fd5bdc519faf65

4 years agoBind retry callback with correct this argument
Matthias Mullie [Tue, 14 May 2019 17:15:09 +0000 (19:15 +0200)]
Bind retry callback with correct this argument

Change-Id: I5db9e4e967d5569d4f90590333a7af2ddab1641f

4 years agolocalisation: Inject 'directory' option to LCStore classes
Timo Tijhof [Mon, 6 May 2019 21:52:52 +0000 (22:52 +0100)]
localisation: Inject 'directory' option to LCStore classes

Avoid globals for this, inject them from the factory function instead.

Bug: T218207
Change-Id: Ia961e8e08dcf1ca154d74ea6a3dadd2d59c1299c

4 years agoRemove FileRepoStatus
Reedy [Tue, 14 May 2019 15:55:59 +0000 (16:55 +0100)]
Remove FileRepoStatus

Change-Id: I4712d7cf8177dd3a7b8157d980dacb88a902262c

4 years agoMerge "Fix AbstractBlock param types in documentation"
jenkins-bot [Tue, 14 May 2019 14:51:56 +0000 (14:51 +0000)]
Merge "Fix AbstractBlock param types in documentation"

4 years agoFix AbstractBlock param types in documentation
Thalia [Tue, 14 May 2019 12:42:50 +0000 (13:42 +0100)]
Fix AbstractBlock param types in documentation

Change-Id: I503375485956d3c05da445542419fb62684ae34a

4 years agoSearchResult: MW version number should be a string in wfDeprecated call
Derick Alangi [Tue, 14 May 2019 11:28:35 +0000 (12:28 +0100)]
SearchResult: MW version number should be a string in wfDeprecated call

Seems this was a typo and I think 1.32 which is a double/float will be
implicitly converted to true (bool) because it will resolve 1.32 to 1 as
integer and then 1 which maps to true (bool).

To avoid this, use '1.32' instead of the integer form of the version.

Change-Id: I2420396e110284f582cd79820ffc6064e247b4b9

4 years agoMerge "watchlist: fix nonsensical timestamp/boolean comparisons in EnhancedRecentChanges"
jenkins-bot [Mon, 13 May 2019 20:46:22 +0000 (20:46 +0000)]
Merge "watchlist: fix nonsensical timestamp/boolean comparisons in EnhancedRecentChanges"

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 13 May 2019 20:18:21 +0000 (22:18 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I2968beda4424a3eab0515fc1a8b597f2f8273e56

4 years agoMerge "Update release notes following the refactor of Block"
jenkins-bot [Mon, 13 May 2019 19:46:34 +0000 (19:46 +0000)]
Merge "Update release notes following the refactor of Block"

4 years agoUpdate release notes following the refactor of Block
Thalia [Mon, 13 May 2019 17:19:51 +0000 (18:19 +0100)]
Update release notes following the refactor of Block

This is a follow-up to I83bceb5.

Bug: T222737
Change-Id: Ic01a4bb196733a719860c21b7c9b8a41a2e1257a

4 years agoresources: Drop jquery.async, deprecated since 1.33
James D. Forrester [Sat, 27 Apr 2019 05:02:39 +0000 (00:02 -0500)]
resources: Drop jquery.async, deprecated since 1.33

Bug: T209699
Change-Id: Ia1a034de8d9996d9955744b7b2b453f4845d69d8

4 years agoMerge "feedback: Fix misplaced mw.Title.getNameText() call"
jenkins-bot [Mon, 13 May 2019 17:45:45 +0000 (17:45 +0000)]
Merge "feedback: Fix misplaced mw.Title.getNameText() call"

4 years agoMerge "Follow-up ee66a534: Drop reference to old 7zip.inc file name from phan config...
jenkins-bot [Mon, 13 May 2019 16:30:16 +0000 (16:30 +0000)]
Merge "Follow-up ee66a534: Drop reference to old 7zip.inc file name from phan config too"

4 years agoMerge "Make ApiQueryUserInfo::getBlockInfo accept an AbstractBlock"
jenkins-bot [Mon, 13 May 2019 15:46:44 +0000 (15:46 +0000)]
Merge "Make ApiQueryUserInfo::getBlockInfo accept an AbstractBlock"

4 years agobuild: Upgrade mediawiki/mediawiki-phan-config from 0.5.0 to 0.6.0 and make pass
James D. Forrester [Mon, 13 May 2019 11:09:41 +0000 (12:09 +0100)]
build: Upgrade mediawiki/mediawiki-phan-config from 0.5.0 to 0.6.0 and make pass

Fix five instances of PhanPluginDuplicateConditionalNullCoalescing;
escape the rest for now.

Bug: T219114
Change-Id: Ic4bb30c43c5315ce6b878b37b432c6e219414f8b

4 years agoSearchEngine: Remove deprecated unused method `transformSearchTerm()`
Derick Alangi [Sat, 11 May 2019 15:21:18 +0000 (16:21 +0100)]
SearchEngine: Remove deprecated unused method `transformSearchTerm()`

I've checked around with code search tool and realized that SMW has
its own implementation of `transformSearchTerm()` which overwrites the
implementation of this method from core as it extends SearchEngine.

So removing this won't break SMW, see usage below;

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbtransformSearchTerm%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: I3dbe04ecba07700167c894673e23c1eead95460f

4 years agoFollow-up ee66a534: Drop reference to old 7zip.inc file name from phan config too
James D. Forrester [Mon, 13 May 2019 14:27:57 +0000 (15:27 +0100)]
Follow-up ee66a534: Drop reference to old 7zip.inc file name from phan config too

Change-Id: I4e018ab676f114a45edb9e7ca6025490134a2ef0

4 years agoMerge "Add tests for HttpRequestFactoryTest."
jenkins-bot [Mon, 13 May 2019 14:24:03 +0000 (14:24 +0000)]
Merge "Add tests for HttpRequestFactoryTest."

4 years agoMake ApiQueryUserInfo::getBlockInfo accept an AbstractBlock
Thalia [Mon, 13 May 2019 14:20:38 +0000 (15:20 +0100)]
Make ApiQueryUserInfo::getBlockInfo accept an AbstractBlock

This method was removed (I84ed216) before the Block class was
refactored (I83bceb5) and restored (If47a938) after the refactor.

After the refactor, this method should accept and AbstractBlock,
so it can handle a SystemBlock as well as a database Block.

Change-Id: Ice8a2e7c19e88406229bd836a45f377abdb72fb6

4 years agotests: Remove deprecated rarely used method stashMwGlobals()
Derick Alangi [Mon, 13 May 2019 13:02:19 +0000 (14:02 +0100)]
tests: Remove deprecated rarely used method stashMwGlobals()

This method was hard deprecated in 1.32 and seems it's no longer
used? Can we remove it now?

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbstashMwGlobals%5Cb&i=nope&files=&repos=

Change-Id: I8d105a82093ea4cb3a38ed04e471e0213b29e8ec

4 years agoAdd tests for HttpRequestFactoryTest.
daniel [Mon, 13 May 2019 10:38:00 +0000 (12:38 +0200)]
Add tests for HttpRequestFactoryTest.

This also moves several tests out of HttpTest, so they are not lost when
the deprecated Http class is removed.

Bug: T222935
Change-Id: Ib4aac96ba1a978e8b6738ed446663afc3cc8c792

4 years agoMerge "move 7zip.inc to a regular php file"
jenkins-bot [Mon, 13 May 2019 11:55:30 +0000 (11:55 +0000)]
Merge "move 7zip.inc to a regular php file"

4 years agomove 7zip.inc to a regular php file
Ariel T. Glenn [Mon, 13 May 2019 10:38:37 +0000 (13:38 +0300)]
move 7zip.inc to a regular php file

Bug: T182814
Change-Id: I53746333fe3c1cdc357bf46d71a351231a845e2f

4 years agoMerge "jobqueue: Remove deprecated unused method pushLazyJobs()"
jenkins-bot [Mon, 13 May 2019 10:51:01 +0000 (10:51 +0000)]
Merge "jobqueue: Remove deprecated unused method pushLazyJobs()"

4 years agojobqueue: Remove deprecated unused method pushLazyJobs()
Derick Alangi [Sat, 11 May 2019 15:05:58 +0000 (16:05 +0100)]
jobqueue: Remove deprecated unused method pushLazyJobs()

Was deprecated in 1.33 and is no longer used anywhere. See usage
below;

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbpushLazyJobs%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: I4d3f6bc019b8ebc7e504d841fc75acdb08061cb4

4 years agoReturn result from HttpRequestFactory get and post methods
daniel [Mon, 13 May 2019 09:31:52 +0000 (11:31 +0200)]
Return result from HttpRequestFactory get and post methods

Bug: T222935
Change-Id: Idf1d00d04abbcf4e3391e3979bbab97e595916a5

4 years agotitle: Convert binary regexp to use Unicode code points
Thiemo Kreuz [Mon, 13 May 2019 09:28:30 +0000 (11:28 +0200)]
title: Convert binary regexp to use Unicode code points

The hex sequences are the raw binary values for the Unicode code points.
Now that we have a more modern PHP at hand, we can use \x{FFFF} for
Unicode characters.

I believe the /S is not needed any more. It "precompiles" the regular
expression. But this is a pretty trivial regular expression.
Precompiling it is most probably even slower.

Change-Id: I49435114b3bc31dcce8aa4e48091d509844a2a07

4 years agofeedback: Fix misplaced mw.Title.getNameText() call
Thiemo Kreuz [Mon, 13 May 2019 08:21:10 +0000 (10:21 +0200)]
feedback: Fix misplaced mw.Title.getNameText() call

What is called "name" here is a file name without the extension. But
the feedback code is not about files. It's a regular page that might
contain a dot. If it does, the link will be broken, because everything
after the last dot will be stripped.

Change-Id: I9a7c7b73f5d899400ffdc4f4a92cb8b42e644b1c

4 years agomove most of dumpTextPass to an include file so it can be subclassed
Ariel T. Glenn [Sun, 11 Feb 2018 10:37:41 +0000 (12:37 +0200)]
move most of dumpTextPass to an include file so it can be subclassed

Bug: T164262
Change-Id: I9b3c54503dd9ad193af7765459613a7e73ffbb45

4 years agoMerge "allow xml page content or metadata dumps to target specific namespaces"
jenkins-bot [Mon, 13 May 2019 06:51:45 +0000 (06:51 +0000)]
Merge "allow xml page content or metadata dumps to target specific namespaces"

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 12 May 2019 19:56:52 +0000 (21:56 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I9dabebcc8d21def62949958e402e314797e71799

4 years agoUpdated special page name translations for Slovak language
zoranzoki21 [Thu, 9 May 2019 14:25:36 +0000 (16:25 +0200)]
Updated special page name translations for Slovak language

Bug: T222793
Change-Id: I738aaa9767f3062be8ad9357072ec5b942e3e7da

4 years agoMerge "changetags: Remove deprecated unused method `purgeTagUsageCache()`"
jenkins-bot [Sat, 11 May 2019 19:19:16 +0000 (19:19 +0000)]
Merge "changetags: Remove deprecated unused method `purgeTagUsageCache()`"

4 years agoMerge "api: Remove deprecated `prepareUrlQuerySearchString()` from core"
jenkins-bot [Sat, 11 May 2019 19:19:09 +0000 (19:19 +0000)]
Merge "api: Remove deprecated `prepareUrlQuerySearchString()` from core"

4 years agoMerge "Remove "Squiz.WhiteSpace.FunctionSpacing" from phpcs exclusions"
jenkins-bot [Sat, 11 May 2019 19:06:42 +0000 (19:06 +0000)]
Merge "Remove "Squiz.WhiteSpace.FunctionSpacing" from phpcs exclusions"

4 years agochangetags: Remove deprecated unused method `purgeTagUsageCache()`
Derick Alangi [Sat, 11 May 2019 15:00:56 +0000 (16:00 +0100)]
changetags: Remove deprecated unused method `purgeTagUsageCache()`

This method was hard deprecated in 1.33 in core and no longer used
anymore.

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbpurgeTagUsageCache%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: I79b364b8a95d9bbf9265c1efa844ff59d11f48aa

4 years agoapi: Remove deprecated `prepareUrlQuerySearchString()` from core
Derick Alangi [Sat, 11 May 2019 14:55:34 +0000 (15:55 +0100)]
api: Remove deprecated `prepareUrlQuerySearchString()` from core

This method was deprecated in 1.33 and is no longer used.

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbprepareUrlQuerySearchString%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: I15a476438f3a579db41a43658e13b6ddc4fc62d4

4 years agoEnable email in TemporaryPasswordPrimaryAuthenticationProviderTest
Umherirrender [Tue, 26 Mar 2019 18:50:28 +0000 (19:50 +0100)]
Enable email in TemporaryPasswordPrimaryAuthenticationProviderTest

Change-Id: I1bc01a3634d11c56292881be7e6477e37ac61d03

4 years agoEnable email settings for ApiBlockTest::testBlockWithEmailBlock
Umherirrender [Tue, 26 Mar 2019 18:21:35 +0000 (19:21 +0100)]
Enable email settings for ApiBlockTest::testBlockWithEmailBlock

Change-Id: Iea8e96c3c1d68c27ec783aa26cf5af2a3ca3869e

4 years agoMerge "Restore ApiQueryUserInfo::getBlockInfo() as a stub."
jenkins-bot [Sat, 11 May 2019 09:42:28 +0000 (09:42 +0000)]
Merge "Restore ApiQueryUserInfo::getBlockInfo() as a stub."

4 years agoRestore ApiQueryUserInfo::getBlockInfo() as a stub.
daniel [Thu, 9 May 2019 10:13:30 +0000 (12:13 +0200)]
Restore ApiQueryUserInfo::getBlockInfo() as a stub.

Fixes unintended breaking change made by I84ed21641c44b2f65ebe.
ApiQueryUserInfo::getBlockInfo() is restoed as a hard deprecated stub.

This renames the method in the new ApiBlockInfoTrait to
getBlockDetails.

Depends-On: I9f40666a31bd4af50762c197c2ce5bf089a5e68c
Change-Id: If47a93878f87d69800e5f305404c22528dac5e94

4 years agoRemove "Squiz.WhiteSpace.FunctionSpacing" from phpcs exclusions
Reedy [Sat, 11 May 2019 01:17:43 +0000 (02:17 +0100)]
Remove "Squiz.WhiteSpace.FunctionSpacing" from phpcs exclusions

Change-Id: I78b3315f26ab91b6b443f5b028a635552f82f5a3

4 years agoMerge "watchlist: cleanup various method/variable names and comments in watchlist...
jenkins-bot [Sat, 11 May 2019 01:37:01 +0000 (01:37 +0000)]
Merge "watchlist: cleanup various method/variable names and comments in watchlist/store code"

4 years agoUpdate cssjanus/cssjanus from 1.2.1 to 1.3.0
Reedy [Sat, 11 May 2019 00:20:15 +0000 (01:20 +0100)]
Update cssjanus/cssjanus from 1.2.1 to 1.3.0

https://github.com/cssjanus/php-cssjanus/releases/tag/v1.3.0
https://github.com/cssjanus/php-cssjanus/compare/v1.2.1...v1.3.0

Bug: T215746
Change-Id: I352f79f6f34279e669057aee7c2f1570800c8a11
Depends-On: Id8aba2d9e99671a9c45e02b271dbf290a11228d7

4 years agoUpdate some composer dependancies
Reedy [Fri, 10 May 2019 23:19:25 +0000 (00:19 +0100)]
Update some composer dependancies

Update composer/semver from 1.4.2 to 1.5.0

https://github.com/composer/semver/releases/tag/1.5.0
https://github.com/composer/semver/compare/1.4.2...1.5.0

Update composer/spdx-licenses from 1.4.0 to 1.5.1

https://github.com/composer/spdx-licenses/compare/1.4.0...1.5.1
https://github.com/composer/spdx-licenses/releases/tag/1.5.1

Update mediawiki/codesniffer from 25.0.0 to 26.0.0

https://github.com/wikimedia/mediawiki-tools-codesniffer/releases/tag/v26.0.0
https://github.com/wikimedia/mediawiki-tools-codesniffer/compare/25.0.0...v26.0.0

Disable failing Squiz.WhiteSpace.FunctionSpacing, can be fixed in a later
commit

Change-Id: I89062c8f28bef893f054650f2e81287291ba9ca0
Depends-On: I8f55e77283f83d853ce340f5c1b7704c65e45bc4

4 years agoMerge "selenium: Add jpeg-js to devDependencies"
jenkins-bot [Fri, 10 May 2019 17:19:18 +0000 (17:19 +0000)]
Merge "selenium: Add jpeg-js to devDependencies"

4 years agoMerge "Add another Bengali synonym for HIDDENCAT in MessagesBn.php"
jenkins-bot [Fri, 10 May 2019 17:03:17 +0000 (17:03 +0000)]
Merge "Add another Bengali synonym for HIDDENCAT in MessagesBn.php"

4 years agoMerge "user: Remove deprecated and unused method `getPasswordValidity()`"
jenkins-bot [Fri, 10 May 2019 17:00:15 +0000 (17:00 +0000)]
Merge "user: Remove deprecated and unused method `getPasswordValidity()`"

4 years agoMerge "Remove deprecated unused method `getModuleScripts()`"
jenkins-bot [Fri, 10 May 2019 17:00:06 +0000 (17:00 +0000)]
Merge "Remove deprecated unused method `getModuleScripts()`"

4 years agoMerge "Add 'avoidhours' option to Language#formatTimePeriod"
jenkins-bot [Fri, 10 May 2019 16:59:58 +0000 (16:59 +0000)]
Merge "Add 'avoidhours' option to Language#formatTimePeriod"

4 years agoMerge "Remove unused title parameter from EditPage::getEditToolbar()"
jenkins-bot [Fri, 10 May 2019 16:20:09 +0000 (16:20 +0000)]
Merge "Remove unused title parameter from EditPage::getEditToolbar()"

4 years agoselenium: Add jpeg-js to devDependencies
Željko Filipin [Fri, 10 May 2019 14:25:24 +0000 (16:25 +0200)]
selenium: Add jpeg-js to devDependencies

It is needed for I92739d84947ac146e in WikibaseMediaInfo Selenium tests.
It can not be added there because of T199116.

Bug: T219815
Bug: T199116
Change-Id: Ib7c3b1b49c280bdc38c40c6aef900a605c1e3cbe

4 years agoProperly output the name of the file in assertFileContains
David Causse [Fri, 10 May 2019 13:57:58 +0000 (15:57 +0200)]
Properly output the name of the file in assertFileContains

Change-Id: If02d094049bd8ec21d5f180382ccc4bc6202f981

4 years agoRemove unused title parameter from EditPage::getEditToolbar()
Thiemo Kreuz [Fri, 10 May 2019 13:23:20 +0000 (15:23 +0200)]
Remove unused title parameter from EditPage::getEditToolbar()

No code uses this parameter:
https://codesearch.wmflabs.org/search/?q=getEditToolbar
I suggest to skip any deprecation because of this.

It might be worth mentioning this in the release notes anyway, or is
it?

Change-Id: I5d47c22fa741df5f9c248e4e1bff2d6e97aca6a7

4 years agoMerge "Missing space between variable name and docstring"
jenkins-bot [Fri, 10 May 2019 08:51:37 +0000 (08:51 +0000)]
Merge "Missing space between variable name and docstring"

4 years agoMissing space between variable name and docstring
Adam Wight [Fri, 10 May 2019 08:25:56 +0000 (10:25 +0200)]
Missing space between variable name and docstring

Change-Id: I308a0de17da5058691ceea983e60c064b0bfc16c

4 years agoAdd 'avoidhours' option to Language#formatTimePeriod
Jack Phoenix [Sat, 4 May 2019 09:27:04 +0000 (12:27 +0300)]
Add 'avoidhours' option to Language#formatTimePeriod

Example use case: in some skins we want to show how many *days* ago a page was edited, but we don't really care about the precise _hours_.
Thus we'll set [ 'avoid' => 'avoidhours' ] when calling Language#formatTimePeriod to output something like "Page last edited 60 days ago" instead of "Page last edited 60 days 9 hours ago".

Change-Id: I0a737aab14ccb2b8d4eccdc41e1eb9232eedcb8a

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 10 May 2019 06:15:09 +0000 (08:15 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie08ae3ddb5a880d39092ff0828d5059d3eb74724

4 years agowatchlist: fix nonsensical timestamp/boolean comparisons in EnhancedRecentChanges
Aaron Schulz [Fri, 10 May 2019 00:59:04 +0000 (17:59 -0700)]
watchlist: fix nonsensical timestamp/boolean comparisons in EnhancedRecentChanges

Also fix bug where the "changes since last visit" counter failed to show for pages
where their entire history is still in recent changes. Although the "new" flag is
set for the RCCacheEntry block, there can still be multiple revisions since the
last one seen by the user. This change accounts for that case.

Bug: T218511
Change-Id: I92060bd26d8642937cad7f8c1ace3c5e066790be

4 years agowatchlist: cleanup various method/variable names and comments in watchlist/store...
Aaron Schulz [Fri, 10 May 2019 00:37:58 +0000 (17:37 -0700)]
watchlist: cleanup various method/variable names and comments in watchlist/store code

Change-Id: I70a55d5b4ea38f92132a15da3feb314b6b5bb013

4 years agouser: Remove deprecated and unused method `getPasswordValidity()`
Derick Alangi [Thu, 9 May 2019 22:31:17 +0000 (23:31 +0100)]
user: Remove deprecated and unused method `getPasswordValidity()`

This method was deprecated in 1.33 and no longer used. See usage;

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbgetPasswordValidity%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: I28829f33d40b5568bedb9678fc43beb146b72e56

4 years agoRemove unused EventRelayer code from ObjectCache::newWANCacheFromParams()
Aaron Schulz [Thu, 9 May 2019 23:13:15 +0000 (16:13 -0700)]
Remove unused EventRelayer code from ObjectCache::newWANCacheFromParams()

Change-Id: I6c0f274e3c49312b63446732f22123af9dac8a2b

4 years agoMerge "Always validate uploads over api"
jenkins-bot [Thu, 9 May 2019 22:58:49 +0000 (22:58 +0000)]
Merge "Always validate uploads over api"

4 years agoRemove deprecated unused method `getModuleScripts()`
Derick Alangi [Thu, 9 May 2019 22:25:53 +0000 (23:25 +0100)]
Remove deprecated unused method `getModuleScripts()`

Deprecated in 1.33 and no longer used. Removed from OutputPage and
from ParserOutput.

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbgetModuleScripts%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: Ifddea94504d0c749d3a77daf967d5fec95b50339

4 years agoMWMessagePack: Deprecate MWMessagePack class and its method
Derick Alangi [Sat, 20 Apr 2019 21:54:28 +0000 (22:54 +0100)]
MWMessagePack: Deprecate MWMessagePack class and its method

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbMWMessagePack%5Cb&i=nope&files=&repos=

Bug: T220313
Change-Id: I3648f8c14116f924d835f68077f46333d892a038

4 years agopage: Remove deprecated/unused methods in PageArchive class
Derick Alangi [Thu, 9 May 2019 15:19:53 +0000 (16:19 +0100)]
page: Remove deprecated/unused methods in PageArchive class

This code is no longer used per usage (below) and was to be actually
removed in 1.33. Methods are;

getLastRevisionText(), listAllPages() and getTextFromRow(), see example
search of usage below.

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbgetTextFromRow%5Cb&i=nope&files=&repos=

Change-Id: I4b9675a9cf84442f08f125f4c23ec67d72b12c15

4 years agoLanguage: Remove deprecated initEncoding(), recodeForEdit() & recodeInput()
Derick Alangi [Mon, 29 Apr 2019 23:12:58 +0000 (00:12 +0100)]
Language: Remove deprecated initEncoding(), recodeForEdit() & recodeInput()

Language::initEncoding(), ::recodeForEdit(), and ::recodeInput() deprecated in
1.28 are now removed.

Usage
=====

* initEncoding() -
  https://codesearch.wmflabs.org/search/?q=initEncoding&i=nope&files=&repos=

* recodeForEdit() -
  https://codesearch.wmflabs.org/search/?q=recodeForEdit&i=nope&files=&repos=

* recodeInput() -
  https://codesearch.wmflabs.org/search/?q=recodeInput&i=nope&files=&repos=

Bug: T220656
Change-Id: I309ec5eebbdddd3b71541c446b15b15204abf8ca

4 years agoMerge "EditPage: Remove `::safeUnicodeInput()` and `::safeUnicodeOutput()`"
jenkins-bot [Thu, 9 May 2019 19:22:53 +0000 (19:22 +0000)]
Merge "EditPage: Remove `::safeUnicodeInput()` and `::safeUnicodeOutput()`"

4 years agoAlways validate uploads over api
Umherirrender [Mon, 25 Mar 2019 20:08:38 +0000 (21:08 +0100)]
Always validate uploads over api

filesize and title are validated in UploadBase::verifyUpload with more
accurate error message

Using stashed async with a long title can cause null errors later on

Bug: T208539
Change-Id: I545435e2baa222ae1544673011c5527874d1d2cb

4 years agoMerge "GlobalFunctions: Version for hard & soft deprecation must match"
jenkins-bot [Thu, 9 May 2019 19:11:39 +0000 (19:11 +0000)]
Merge "GlobalFunctions: Version for hard & soft deprecation must match"

4 years agoEditPage: Remove `::safeUnicodeInput()` and `::safeUnicodeOutput()`
Derick Alangi [Wed, 8 May 2019 19:33:51 +0000 (20:33 +0100)]
EditPage: Remove `::safeUnicodeInput()` and `::safeUnicodeOutput()`

These methods were deprecated in 1.30 are now being removed as there
are no longer any usage of them.

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5Cb(safeUnicodeOutput%7CsafeUnicodeInput)%5Cb&i=nope&files=&repos=

Bug: T220656
Change-Id: Idd36a81593b9e4e48a43c497c620c3f7d0b0554b

4 years agoFix logic in NamespaceInfo::getRestrictionLevels
Aryeh Gregor [Mon, 6 May 2019 07:27:02 +0000 (10:27 +0300)]
Fix logic in NamespaceInfo::getRestrictionLevels

When $wgNamespaceProtection specifies multiple rights for a
namespace, the code was assuming all of those rights had to
come from one group. But MediaWiki allows for the rights to
come from multiple groups that each give a subset of the rights. Allow for that case.

Bug: T222598
Change-Id: I1e9aca6e521260f783bd881e7d095d62bc605dc6

4 years agoRemove several methods, deprecated in 1.32
Derick Alangi [Thu, 9 May 2019 16:03:57 +0000 (17:03 +0100)]
Remove several methods, deprecated in 1.32

I've checked and doubled checked that these methods are no longer used
anywhere in core or extensions, hence removed them. They were hard deprecated
in MediaWiki 1.32.

* OutputPage:
  ** `::showFileCopyError()`
  ** `::showFileRenameError()`
  ** `::showFileDeleteError()`
  ** `::showFileNotFoundError()`

* ApiBase:
  ** `::truncateArray()`

* IcuCollation:
  ** `::getICUVersion()`

* HTMLForm:
  ** `::setSubmitProgressive()`

* ResourceLoaderStartUpModules:
  ** `::getStartupModules()`
  ** `::getLegacyModules()`

* BaseTemplate:
  ** `::msgHtml()`

* QuickTemplate:
  ** `::msgHtml()`

* WatchAction:
  ** `::getUnwatchToken()`

Bug: T220656
Change-Id: Ic1a723a991f4ff63fcb5f045ddcda18d1f8c3c68

4 years agoMerge "IP: Hard deprecate `IP::isValidBlock()` in favor of `::isValidRange()`"
jenkins-bot [Thu, 9 May 2019 18:19:37 +0000 (18:19 +0000)]
Merge "IP: Hard deprecate `IP::isValidBlock()` in favor of `::isValidRange()`"

4 years agoMerge "Remove several deprecated unused methods from OutputPage & ParserOutput"
jenkins-bot [Thu, 9 May 2019 18:19:28 +0000 (18:19 +0000)]
Merge "Remove several deprecated unused methods from OutputPage & ParserOutput"

4 years agoIP: Hard deprecate `IP::isValidBlock()` in favor of `::isValidRange()`
Derick Alangi [Thu, 9 May 2019 14:31:26 +0000 (15:31 +0100)]
IP: Hard deprecate `IP::isValidBlock()` in favor of `::isValidRange()`

`IP::isValidRange()` replaces deprecated `IP::isValidBlock()` and after
Ic00f760a0a214f is landed, no usage will remain so hard deprecating it
in preparation for removal in after the 1.34 cut.

Depends-On: Ic00f760a0a214faba7a71dd088da1dc25ecb796c
Change-Id: I6943e45c06dbb954e2156dc4e796ddf3553b7a76

4 years agoMerge "htmlform: Use `::isValidRange()` instead of deprecated `::isValidBlock()`"
jenkins-bot [Thu, 9 May 2019 16:52:34 +0000 (16:52 +0000)]
Merge "htmlform: Use `::isValidRange()` instead of deprecated `::isValidBlock()`"

4 years agoMerge "foreign-resources.yaml: Add jquery.i18n"
jenkins-bot [Thu, 9 May 2019 16:43:10 +0000 (16:43 +0000)]
Merge "foreign-resources.yaml: Add jquery.i18n"

4 years agohtmlform: Use `::isValidRange()` instead of deprecated `::isValidBlock()`
Derick Alangi [Thu, 9 May 2019 14:27:43 +0000 (15:27 +0100)]
htmlform: Use `::isValidRange()` instead of deprecated `::isValidBlock()`

Only 1 usage of this call in everywhere, see usage below. Once this is merged,
the method can be hard deprecated and later killed.

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbisValidBlock%5Cb&i=nope&files=&repos=

Change-Id: Ic00f760a0a214faba7a71dd088da1dc25ecb796c

4 years agoMerge "Simplify by using ?: operator"
jenkins-bot [Thu, 9 May 2019 16:25:22 +0000 (16:25 +0000)]
Merge "Simplify by using ?: operator"

4 years agoforeign-resources.yaml: Add jquery.i18n
James D. Forrester [Sat, 27 Apr 2019 05:08:10 +0000 (00:08 -0500)]
foreign-resources.yaml: Add jquery.i18n

Change-Id: I83ab62283828f54a4cf3d29dc0adbada08a5bc32

4 years agoAdd another Bengali synonym for HIDDENCAT in MessagesBn.php
Aftab [Tue, 30 Apr 2019 20:58:02 +0000 (20:58 +0000)]
Add another Bengali synonym for HIDDENCAT in MessagesBn.php

Bug: T222126
Change-Id: Ie54433ed32ed209d3cb0077c5c2e3f1c67a94444

4 years agotitle: Remove misplaced documentation from TitleParser
Thiemo Kreuz [Tue, 7 May 2019 15:07:47 +0000 (17:07 +0200)]
title: Remove misplaced documentation from TitleParser

There is no $form.

Change-Id: I1468f8dbaceaa78e12d7c23170ceba1fbb2b129e

4 years agoMerge "SearchEngine: Followup on I623b39e7ec791a66c4cf40"
jenkins-bot [Thu, 9 May 2019 15:51:35 +0000 (15:51 +0000)]
Merge "SearchEngine: Followup on I623b39e7ec791a66c4cf40"

4 years agoRemove several deprecated unused methods from OutputPage & ParserOutput
Derick Alangi [Thu, 9 May 2019 15:35:44 +0000 (16:35 +0100)]
Remove several deprecated unused methods from OutputPage & ParserOutput

Output::sectionEditLinksEnabled(), ParserOutput::getEditSectionTokens() and
::getTOCEnabled(), ::setEditSectionTokens(), ::setTOCEnabled have been removed.

Change-Id: I7fe927776e2451bafb96ef5c4ee500497ec3734c

4 years agoAvoid various phpstorm warnings in MediaWikiServices due to "object" return hint
Aaron Schulz [Mon, 22 Apr 2019 08:21:50 +0000 (01:21 -0700)]
Avoid various phpstorm warnings in MediaWikiServices due to "object" return hint

Change-Id: Icbd115104d34e3c7f4075902e75484c4779637eb

4 years agoGlobalFunctions: Version for hard & soft deprecation must match
Derick Alangi [Thu, 9 May 2019 14:56:40 +0000 (15:56 +0100)]
GlobalFunctions: Version for hard & soft deprecation must match

Per the deprecation policy, hard and soft deprecation version for
MW must match, so hard must match soft, in that order. The method
wfGetLBFactory() was soft deprecated in 1.27 so hard deprecation
version should be 1.27 and not 1.34

This is a follow up for 91a3f56.

Change-Id: I2b4b4c97dca3bc8ecadf7a53d68ea183b4a0de9c

4 years agoSearchEngine: Followup on I623b39e7ec791a66c4cf40
Derick Alangi [Thu, 9 May 2019 14:42:14 +0000 (15:42 +0100)]
SearchEngine: Followup on I623b39e7ec791a66c4cf40

Per https://www.mediawiki.org/wiki/Deprecation_policy#Deprecation,
the version for hard deprecation must be exactly the same as the
one it was soft deprecated in.

Bug: T221431
Change-Id: Ib7c2b569959194e15f50c62fe0eca1c3011bc50e

4 years agospecialPageAliases: Order BlockList at correct place per alphabet
zoranzoki21 [Thu, 9 May 2019 14:06:58 +0000 (16:06 +0200)]
specialPageAliases: Order BlockList at correct place per alphabet

Change-Id: Ia5b16cf43ec5ffca7872b90cf491bf66b814d677

4 years agoMerge "Extract default mediawiki.ui button styles into mixins"
jenkins-bot [Thu, 9 May 2019 13:30:34 +0000 (13:30 +0000)]
Merge "Extract default mediawiki.ui button styles into mixins"

4 years agoExtract default mediawiki.ui button styles into mixins
Jan Drewniak [Wed, 8 May 2019 11:18:00 +0000 (13:18 +0200)]
Extract default mediawiki.ui button styles into mixins

Move the default mediawiki.ui button styles into two mixins:
.mw-ui-button() and .mw-ui-button-states().

Change name of .button-colors-primary() mixin to .mw-ui-button-colors-primary().

These mixins are globally available and originally intended for use
on special pages in the MinervaNeue skin.

Bug: T219895
Change-Id: Ibeed271e143c062c6bfc48a6c4db74635dbc40e2

4 years agoselenium: Asynchronous methods should be returned to browser.call()
jdlrobson [Wed, 8 May 2019 21:05:44 +0000 (14:05 -0700)]
selenium: Asynchronous methods should be returned to browser.call()

Api.edit is asynchronous and is wrapped in a browser.call but
should be returned.

Follows-up 341320457cd67.

Bug: T220479
Change-Id: Id0e3549e93a967165bdc1bb758ddef8d59ccc300

4 years agoMerge "Hard deprecate Password::equals()"
jenkins-bot [Thu, 9 May 2019 02:09:42 +0000 (02:09 +0000)]
Merge "Hard deprecate Password::equals()"

4 years agoMerge "Make skins/README looks like extensions/README file"
jenkins-bot [Thu, 9 May 2019 01:37:58 +0000 (01:37 +0000)]
Merge "Make skins/README looks like extensions/README file"

4 years agordbms: improve query logging logic in Database
Aaron Schulz [Tue, 7 May 2019 00:01:03 +0000 (17:01 -0700)]
rdbms: improve query logging logic in Database

* Merge the two debug() calls in attemptQuery() into one single
  call which checks DBO_DEBUG. This avoids pointless SPI logger
  overhead.
* Avoid calling generalizeSQL() unless actually necessary. This
  works via a lazy-loading object.
* Make lastQuery() a bit more consistent in terms of when it
  gets updated.
* Add DBQueryDisconnectedError class for dropped connections.
* Clean up visbility and names of last query/error fields.

Change-Id: Ie8df3434d23b18f7a0f4c056d71388192cc52c6b