lhc/web/wiklou.git
2 years agoAdd Handler::getRouter()
Tim Starling [Sat, 22 Jun 2019 23:08:07 +0000 (16:08 -0700)]
Add Handler::getRouter()

Instead of providing the Router as a service, as previously proposed,
inject it into the handler via init().

Change-Id: I6008a2c5de692c0d56b7db849b28fd82e0196881

2 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 25 Jun 2019 19:58:18 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I85c06c37bff58190b9817e1a2c360ca5bf4edfa8

2 years agoFollowup I54b847192: BIDI isolate usernames in Special:Mute
Moriel Schottlender [Tue, 25 Jun 2019 17:36:17 +0000 (10:36 -0700)]
Followup I54b847192: BIDI isolate usernames in Special:Mute

Usernames can appear in any language in any wiki, so we need
to bidi-isolate them inside a sentence, so they're not broken.

Change-Id: Ic1402a1a5936edcb6e75b4a48d6bbecefad49f66

2 years agoMerge "Fix LocalFile::move"
jenkins-bot [Tue, 25 Jun 2019 17:20:06 +0000 (17:20 +0000)]
Merge "Fix LocalFile::move"

2 years agoMerge "Add Special:Mute as a shortcut for muting notifications"
jenkins-bot [Tue, 25 Jun 2019 17:15:39 +0000 (17:15 +0000)]
Merge "Add Special:Mute as a shortcut for muting notifications"

2 years agoFix LocalFile::move
Gergő Tisza [Tue, 25 Jun 2019 14:30:31 +0000 (16:30 +0200)]
Fix LocalFile::move

Fixes a wfFindFile/wfLocalFile mixup in I9437494d.

Also restore the original behavior in Linker::makeBrokenImageLinkObj
for paranoia - findFile has a local cache so calling it and then
discarding the results is not completely a noop.

Bug: T226448
Change-Id: Ibb9d6f6383eb96ba27e0edd60423552e5cea4688

2 years agoFix meta=languageinfo usage example
Lucas Werkmeister [Tue, 25 Jun 2019 08:43:51 +0000 (10:43 +0200)]
Fix meta=languageinfo usage example

This switched between the generic uselang and a module-specific lilang
parameter a bit during development, and apparently an incorrect version
ended up being merged.

Change-Id: I004be4be318785ee1f59d609d8506d96644bc89d

2 years agoAdd Special:Mute as a shortcut for muting notifications
Dayllan Maza [Tue, 7 May 2019 14:55:48 +0000 (10:55 -0400)]
Add Special:Mute as a shortcut for muting notifications

 - Special:Mute has been added as a quick way for users to block unwanted
   emails from other users originating from Special:EmailUser
 - Special:Mute can be enabled by setting $wgEnableSpecialMute = true.
   This flag default value is `false`. This flag is temporary until
   enough wikis have this feature enabled and then it will go away
 - When Special:Mute is enabled, emails sent from Special:EmailUser
   contain a link to Special:Mute to facilitate access to the page

In the future, Special:Mute will support extensions to append other types
of notifications that could be muted. These are some of the tasks tracking
the rest of the work:
- T218270
- T220163
- T218266

It is worth mentioning that blocking emails from users is already available
via Special:Preferences

Bug: T218265
Change-Id: I54b847192f42ee1f37999d36c3a187f8826f55a8

2 years agoMerge "Tolerate invalid titles in some ChangesFeed and LogFormatter code"
jenkins-bot [Mon, 24 Jun 2019 23:29:11 +0000 (23:29 +0000)]
Merge "Tolerate invalid titles in some ChangesFeed and LogFormatter code"

2 years agoMerge "Follow-up I3e114219: Don't tell people to use the deprecated replacement of...
jenkins-bot [Mon, 24 Jun 2019 23:27:44 +0000 (23:27 +0000)]
Merge "Follow-up I3e114219: Don't tell people to use the deprecated replacement of the deprecated removed code"

2 years agoMerge "Drop wfGetLBFactory, deprecated in 1.27"
jenkins-bot [Mon, 24 Jun 2019 23:20:17 +0000 (23:20 +0000)]
Merge "Drop wfGetLBFactory, deprecated in 1.27"

2 years agoMerge "Drop wfResetSessionID, deprecated in 1.27"
jenkins-bot [Mon, 24 Jun 2019 23:20:11 +0000 (23:20 +0000)]
Merge "Drop wfResetSessionID, deprecated in 1.27"

2 years agoTolerate invalid titles in some ChangesFeed and LogFormatter code
daniel [Mon, 3 Jun 2019 21:29:55 +0000 (23:29 +0200)]
Tolerate invalid titles in some ChangesFeed and LogFormatter code

Bug: T224811
Change-Id: If134e20cc14d80f9186611606df0b860889bd2cf

2 years agoMerge "Drop the UserLoadFromSession hook, deprecated in 1.27"
jenkins-bot [Mon, 24 Jun 2019 23:14:48 +0000 (23:14 +0000)]
Merge "Drop the UserLoadFromSession hook, deprecated in 1.27"

2 years agoMerge "SkinFactory: Drop getDefaultInstance(), deprecated in 1.27"
jenkins-bot [Mon, 24 Jun 2019 23:08:02 +0000 (23:08 +0000)]
Merge "SkinFactory: Drop getDefaultInstance(), deprecated in 1.27"

2 years agoMerge "Drop the UserRights hook, deprecated in 1.26"
jenkins-bot [Mon, 24 Jun 2019 23:06:05 +0000 (23:06 +0000)]
Merge "Drop the UserRights hook, deprecated in 1.26"

2 years agoMerge "PrefixSearch: Drop titleSearch(), deprecated in 1.23"
jenkins-bot [Mon, 24 Jun 2019 23:02:09 +0000 (23:02 +0000)]
Merge "PrefixSearch: Drop titleSearch(), deprecated in 1.23"

2 years agoMerge "Linker::link: Drop support for string query param, deprecated in 1.20"
jenkins-bot [Mon, 24 Jun 2019 22:49:46 +0000 (22:49 +0000)]
Merge "Linker::link: Drop support for string query param, deprecated in 1.20"

2 years agoFollow-up I3e114219: Don't tell people to use the deprecated replacement of the depre...
James D. Forrester [Mon, 24 Jun 2019 22:47:23 +0000 (15:47 -0700)]
Follow-up I3e114219: Don't tell people to use the deprecated replacement of the deprecated removed code

Change-Id: I496ba02f9fc4837f7c7246567d19107ee2baa53d

2 years agoDrop wfGetLBFactory, deprecated in 1.27
James D. Forrester [Fri, 21 Jun 2019 21:17:06 +0000 (14:17 -0700)]
Drop wfGetLBFactory, deprecated in 1.27

Change-Id: I53b5611edc9443f6a684192e5a03bb0100cb448d

2 years agoDrop wfResetSessionID, deprecated in 1.27
James D. Forrester [Fri, 21 Jun 2019 21:16:14 +0000 (14:16 -0700)]
Drop wfResetSessionID, deprecated in 1.27

Change-Id: I14a9c91a43504ee02aac809f5e1124e1cb958e19

2 years agoDrop the UserLoadFromSession hook, deprecated in 1.27
James D. Forrester [Fri, 21 Jun 2019 21:14:23 +0000 (14:14 -0700)]
Drop the UserLoadFromSession hook, deprecated in 1.27

Change-Id: Ic86d9ee1fe6763270e79e31296ecd027e5d41be2

2 years agoSkinFactory: Drop getDefaultInstance(), deprecated in 1.27
James D. Forrester [Fri, 21 Jun 2019 21:10:00 +0000 (14:10 -0700)]
SkinFactory: Drop getDefaultInstance(), deprecated in 1.27

Change-Id: I40313382c77a1521b80b70a55778db5da1a8a866

2 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 24 Jun 2019 19:54:41 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I6d78ce99ea53dbbf8f43dc422ef8c0dc6a9f5d2a

2 years agoMerge "rdbms: Type IDatabase::buildLike param as variadic to Phan"
jenkins-bot [Mon, 24 Jun 2019 19:47:53 +0000 (19:47 +0000)]
Merge "rdbms: Type IDatabase::buildLike param as variadic to Phan"

2 years agoMerge "resourceloader: Add method ResourceLoaderModule::getVary"
Fomafix [Mon, 24 Jun 2019 18:38:35 +0000 (18:38 +0000)]
Merge "resourceloader: Add method ResourceLoaderModule::getVary"

2 years agoDrop the UserRights hook, deprecated in 1.26
James D. Forrester [Fri, 21 Jun 2019 21:07:43 +0000 (14:07 -0700)]
Drop the UserRights hook, deprecated in 1.26

Change-Id: Ib4dc6f495c0d1d2aa1f41c1f61e09437f33c9077

2 years agoPrefixSearch: Drop titleSearch(), deprecated in 1.23
James D. Forrester [Fri, 21 Jun 2019 20:59:02 +0000 (13:59 -0700)]
PrefixSearch: Drop titleSearch(), deprecated in 1.23

Change-Id: I3e11421953bfe63856e29b928727c8264275cd25

2 years agoLinker::link: Drop support for string query param, deprecated in 1.20
James D. Forrester [Fri, 21 Jun 2019 20:56:34 +0000 (13:56 -0700)]
Linker::link: Drop support for string query param, deprecated in 1.20

Change-Id: I910cead2c32a3525772ee0640c8ed3b90ad40a84

2 years agoMerge "Replace very trivial mock builders with createMock()"
jenkins-bot [Mon, 24 Jun 2019 17:15:17 +0000 (17:15 +0000)]
Merge "Replace very trivial mock builders with createMock()"

2 years agoMerge "resourceloader: Throw exception in ResourceLoaderImage::getPath"
jenkins-bot [Mon, 24 Jun 2019 17:14:04 +0000 (17:14 +0000)]
Merge "resourceloader: Throw exception in ResourceLoaderImage::getPath"

2 years agoMerge "Use IResultWrapper in code comments instead of ResultWrapper"
jenkins-bot [Mon, 24 Jun 2019 17:03:13 +0000 (17:03 +0000)]
Merge "Use IResultWrapper in code comments instead of ResultWrapper"

2 years agoMerge "rdbms: split out private LoadBalancer::getServerInfoStrict method"
jenkins-bot [Mon, 24 Jun 2019 17:03:05 +0000 (17:03 +0000)]
Merge "rdbms: split out private LoadBalancer::getServerInfoStrict method"

2 years agoresourceloader: Throw exception in ResourceLoaderImage::getPath
Fomafix [Sun, 16 Jun 2019 09:20:11 +0000 (11:20 +0200)]
resourceloader: Throw exception in ResourceLoaderImage::getPath

Throw an exception in ResourceLoaderImage::getPath when there is no
matching path instead of continue with null.

Change-Id: I677f4a53f4c90af27db0cc2fd8ef5f028fb49168

2 years agoresourceloader: Add method ResourceLoaderModule::getVary
Fomafix [Mon, 24 Jun 2019 14:47:23 +0000 (16:47 +0200)]
resourceloader: Add method ResourceLoaderModule::getVary

Change-Id: I79cd3ad7ad65533717bab52462ffaab5b2179789

2 years agoReplace very trivial mock builders with createMock()
Thiemo Kreuz [Wed, 5 Jun 2019 12:54:03 +0000 (14:54 +0200)]
Replace very trivial mock builders with createMock()

It does the exact same before and after. createMock() always disables
the default constructor.

Change-Id: I7b294cc3ee7f245f0aec55d12f1277fca5d39bce

2 years agordbms: Type IDatabase::buildLike param as variadic to Phan
Timo Tijhof [Fri, 21 Jun 2019 20:55:53 +0000 (21:55 +0100)]
rdbms: Type IDatabase::buildLike param as variadic to Phan

Follows-up 725a59f0c7.

* The real method in implementing classes is variadic.

* PHPUnit 6 on HHVM cannot create a mock for a class with a function
  that has a variadic parameter in its actual signature.
  See https://phabricator.wikimedia.org/T191668#5263929 for why.

  This is why the interface (which we use for mock creation)
  currently cannot use the variadic syntax in its signature.

* Documenting the interface as variadic while leaving the actual
  signature without it breaks stuff as well (PHPCS, Phan, ..).

* Documenting it as not variadic works for everyone, but makes
  Phan warn "PhanParamTooMany" at call sites when it is used
  as variadic (to be expected).

We can either try to disable this everywhere in repos that use
this method, but we have another option that might be cleaner.
We can document it as variadic in a way only Phan will consider
and consider only for its call-site analysis.

Hackadihack, Wickedidou, -- introducing `@phan-param`, per
<https://github.com/phan/phan/wiki/Annotating-Your-Source-Code>.

Bug: T226223
Change-Id: I33c729506c271de0f051b77d5f6aafd7a8705745

2 years agoMerge "parser: inject the time for {{REVISIONTIMESTAMP}} on pre-save parse"
jenkins-bot [Sun, 23 Jun 2019 22:13:48 +0000 (22:13 +0000)]
Merge "parser: inject the time for {{REVISIONTIMESTAMP}} on pre-save parse"

2 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 23 Jun 2019 20:01:40 +0000 (22:01 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Iaaf41180bfc0a8931d4426d20fbe0c38641642e0

2 years agoMerge "API: Abstract out parameter validation"
jenkins-bot [Sun, 23 Jun 2019 09:09:52 +0000 (09:09 +0000)]
Merge "API: Abstract out parameter validation"

2 years agoAPI: Abstract out parameter validation
Brad Jorsch [Tue, 22 May 2018 23:23:20 +0000 (19:23 -0400)]
API: Abstract out parameter validation

With the introduction of a REST API into MediaWiki core, we're going to
want to share parameter validation logic rather than having similar code
in both the Action API and the REST API. This abstracts out parameter
validation logic as a library.

There will be at least two follow-up patches:
* One to add calls in the REST API, plus the interface for the REST API
  to do body validation. Should be reasonably straightforward.
* One to adjust the Action API to use this. That'll be much less
  straightforward, as the Action API needs some MediaWiki-specific types
  (which the REST API might use too in the future) and needs to override
  the defaults on some of the library's checks (to maintain back-compat).

Bug: T142080
Bug: T223239
Change-Id: I5c0cc3a8d686ace97596df5832c450a6a50f902c
Depends-On: Iea05dc439688871c574c639e617765ae88a75ff7

2 years agoMerge "Skin::outputPage: Drop support for specifying a context, deprecated in 1.20"
jenkins-bot [Sat, 22 Jun 2019 20:24:25 +0000 (20:24 +0000)]
Merge "Skin::outputPage: Drop support for specifying a context, deprecated in 1.20"

2 years agoSkip ::testT69870() under Windows system
RazeSoldier [Sat, 15 Jun 2019 06:35:18 +0000 (14:35 +0800)]
Skip ::testT69870() under Windows system

Anonymous pipe under Windows does not support asynchronous read and write[1],
and the default buffer is too small (~4K), the test will definitely block it.

Before T69870, anonymous pipe for Windows can no longer hold more than 4K of data.

[1] https://docs.microsoft.com/en-us/windows/desktop/ipc/anonymous-pipe-operations

Bug: T209159
Change-Id: Ie9de36b1e6b68db95c35a0044c5b0d86c0050d33

2 years agordbms: split out private LoadBalancer::getServerInfoStrict method
Aaron Schulz [Tue, 18 Jun 2019 22:54:36 +0000 (23:54 +0100)]
rdbms: split out private LoadBalancer::getServerInfoStrict method

Change-Id: I9f77a07c75696f4a8353872375a7306d7734625a

2 years agoUse IResultWrapper in code comments instead of ResultWrapper
Aaron Schulz [Thu, 20 Jun 2019 19:03:34 +0000 (20:03 +0100)]
Use IResultWrapper in code comments instead of ResultWrapper

Change-Id: Idb813c20bef0d41d0f9f01440daab4fee6cdb38d

2 years agordbms: rename safeWaitForMasterPos() to waitForMasterPos() in ILoadBalancer
Aaron Schulz [Wed, 19 Jun 2019 16:28:09 +0000 (17:28 +0100)]
rdbms: rename safeWaitForMasterPos() to waitForMasterPos() in ILoadBalancer

Change-Id: I2ad0c6f369ba992895a5306a57f1af16a772844c

2 years agoMerge "Revert "Fix testsuites for LogFormatter""
SBassett [Sat, 22 Jun 2019 12:26:41 +0000 (12:26 +0000)]
Merge "Revert "Fix testsuites for LogFormatter""

2 years agoRevert "Fix testsuites for LogFormatter"
SBassett [Sat, 22 Jun 2019 12:25:14 +0000 (12:25 +0000)]
Revert "Fix testsuites for LogFormatter"

This reverts commit d0c2da82616a280f51feafa015dd67608c13e29b.

Reason for revert: Original patch set appeared to work then began failing multiple CI builds post-merge.  Simply reverting for now due for T226293.

Big: T226293
Change-Id: I3e33300cecfe87926fcb8851689d67c3b1258b0f

2 years agoMerge "Remove support for calling OutputPage::wrapWikiMsg() with an options parameter"
Jforrester [Fri, 21 Jun 2019 22:11:42 +0000 (22:11 +0000)]
Merge "Remove support for calling OutputPage::wrapWikiMsg() with an options parameter"

2 years agoFix testsuites for LogFormatter
rxy [Fri, 31 May 2019 20:04:09 +0000 (20:04 +0000)]
Fix testsuites for LogFormatter

Change-Id: I064f563cb54a50c3292b1f9e24b0bb467f69af9b

2 years agoSkin::outputPage: Drop support for specifying a context, deprecated in 1.20
James D. Forrester [Fri, 21 Jun 2019 20:47:38 +0000 (13:47 -0700)]
Skin::outputPage: Drop support for specifying a context, deprecated in 1.20

Bug: T220656
Change-Id: Ie416c88874599dbb196fc0e5abac711345c155a0

2 years agoRemove support for calling OutputPage::wrapWikiMsg() with an options parameter
Reedy [Sat, 11 May 2019 15:25:26 +0000 (16:25 +0100)]
Remove support for calling OutputPage::wrapWikiMsg() with an options parameter

Bug: T220656
Change-Id: If9103eb702f3879172d6e860d974603b7b32d6f5

2 years agoMerge "rdbms: add replica server counting methods to ILoadBalancer"
jenkins-bot [Fri, 21 Jun 2019 20:23:21 +0000 (20:23 +0000)]
Merge "rdbms: add replica server counting methods to ILoadBalancer"

2 years agoMerge "Deprecate Sanitizer::setupAttributeWhitelist/attributeWhitelist"
jenkins-bot [Fri, 21 Jun 2019 16:12:05 +0000 (16:12 +0000)]
Merge "Deprecate Sanitizer::setupAttributeWhitelist/attributeWhitelist"

2 years agoFix excessive whitespace in BitmapMetadataHandlerTest.php
Reedy [Fri, 21 Jun 2019 08:26:36 +0000 (09:26 +0100)]
Fix excessive whitespace in BitmapMetadataHandlerTest.php

Change-Id: Ic801069c1a290626f863723409f156b071dec7f5
Follows-Up: I6705a8d46f53ef807edab10f8f0cb0eba6b560dc

2 years agoMerge "API: Update api-help-datatypes for Timestamp library changes"
jenkins-bot [Fri, 21 Jun 2019 06:07:33 +0000 (06:07 +0000)]
Merge "API: Update api-help-datatypes for Timestamp library changes"

2 years agoMerge "Update ObjectFactory and ConvertibleTimestamp"
jenkins-bot [Fri, 21 Jun 2019 06:06:56 +0000 (06:06 +0000)]
Merge "Update ObjectFactory and ConvertibleTimestamp"

2 years agoMerge "Some love to UserDupes"
jenkins-bot [Fri, 21 Jun 2019 01:26:15 +0000 (01:26 +0000)]
Merge "Some love to UserDupes"

2 years agoMerge "GlobalFunctions: Remove deprecated wfCountDown() function from core"
jenkins-bot [Thu, 20 Jun 2019 22:53:01 +0000 (22:53 +0000)]
Merge "GlobalFunctions: Remove deprecated wfCountDown() function from core"

2 years agoMerge "Update documentation in DefaultSettings to reflect new Preprocessor default"
jenkins-bot [Thu, 20 Jun 2019 22:39:16 +0000 (22:39 +0000)]
Merge "Update documentation in DefaultSettings to reflect new Preprocessor default"

2 years agoMerge "resourceloader: Remove my `@author` comments from unit tests"
jenkins-bot [Thu, 20 Jun 2019 22:28:10 +0000 (22:28 +0000)]
Merge "resourceloader: Remove my `@author` comments from unit tests"

2 years agoMerge "resourceloader: Remove 'Series60' from Grade C regex"
jenkins-bot [Thu, 20 Jun 2019 22:25:52 +0000 (22:25 +0000)]
Merge "resourceloader: Remove 'Series60' from Grade C regex"

2 years agoGlobalFunctions: Remove deprecated wfCountDown() function from core
Derick Alangi [Thu, 20 Jun 2019 21:49:04 +0000 (22:49 +0100)]
GlobalFunctions: Remove deprecated wfCountDown() function from core

The global function `wfCountDown()` was deprecated in 1.31 and a replacement
made available (\Maintenance::countdown()) in 1.31 as well. Currently, the few
usage in BSF have been cleaned up, hence can be removed.

Usage
=====

https://codesearch.wmflabs.org/search/?q=wfCountDown&i=nope&files=&repos=

Depends-On: Iae61d36899036ecdc0341feb3f1bcaa6b38dbf44
Depends-On: Id202148c6a6ceaadcefcf7a4ab8360edd9fe3b0b
Bug: T220656
Change-Id: Ic7460f1d35cb6f2eb8bf60694cdd4c55b2e001c0

2 years agoMerge "Filter out duplicate autoblocks when checking for blocks"
jenkins-bot [Thu, 20 Jun 2019 21:41:45 +0000 (21:41 +0000)]
Merge "Filter out duplicate autoblocks when checking for blocks"

2 years agoFilter out duplicate autoblocks when checking for blocks
Thalia [Thu, 20 Jun 2019 10:29:01 +0000 (11:29 +0100)]
Filter out duplicate autoblocks when checking for blocks

Follow-up to I7654907.

Bug: T225919
Change-Id: I67e72d6c88e3cbfd9515a016b2782d1d9b123775

2 years agoRemove global function wfBCP47, deprecated in 1.31
C. Scott Ananian [Wed, 19 Jun 2019 19:00:09 +0000 (15:00 -0400)]
Remove global function wfBCP47, deprecated in 1.31

Change-Id: I8b9956bec18cc7bbc9aafeec124e6c1fef262dc6

2 years agoMerge "languages: Use "your" instead of "my" in the updatedmarker value"
jenkins-bot [Thu, 20 Jun 2019 20:38:38 +0000 (20:38 +0000)]
Merge "languages: Use "your" instead of "my" in the updatedmarker value"

2 years agoMerge "config: ServiceOptions O(1) assert time in the common case"
jenkins-bot [Thu, 20 Jun 2019 19:53:20 +0000 (19:53 +0000)]
Merge "config: ServiceOptions O(1) assert time in the common case"

2 years agoconfig: ServiceOptions O(1) assert time in the common case
Tim Starling [Thu, 20 Jun 2019 16:45:19 +0000 (11:45 -0500)]
config: ServiceOptions O(1) assert time in the common case

Check if the key array passed in the constructor is identical to the key
array passed to assertRequiredOptions(). This takes O(1) time if the key
arrays have the same underlying storage pointer, which is the common
case.

If the arrays have a different order but are otherwise identical, the
slow path is taken instead. The comparison will add O(N) overhead in
addition to the overhead of the array_diff() calls.

Change-Id: Icb9040ab66286b72a270e84f910cb578bed105b0

2 years agoMerge "Remove OutputPage::enableSectionEditLinks(), ParserOptions::get/setEditSection()"
jenkins-bot [Thu, 20 Jun 2019 19:18:41 +0000 (19:18 +0000)]
Merge "Remove OutputPage::enableSectionEditLinks(), ParserOptions::get/setEditSection()"

2 years agoDeprecate Sanitizer::setupAttributeWhitelist/attributeWhitelist
C. Scott Ananian [Tue, 23 Apr 2019 17:09:36 +0000 (13:09 -0400)]
Deprecate Sanitizer::setupAttributeWhitelist/attributeWhitelist

These methods should be made private in the next release, but
hard-deprecate them for 1.34.

Tweak the return value of the attribute whitelist to be an
associative rather than a sequential array, which makes the
lookup of allowed attributes more efficient and avoids an
array_flip for every html element sanitized.

Bug: T221677
Change-Id: I17d734937accec6c2679dbe17328cf9554bd556a

2 years agoMerge "Parser: Remove deprecated method Parser::fetchFile()"
jenkins-bot [Thu, 20 Jun 2019 18:02:25 +0000 (18:02 +0000)]
Merge "Parser: Remove deprecated method Parser::fetchFile()"

2 years agoMerge "installer: Remove deprecated method WebInstallerOutput::addWikiText()"
jenkins-bot [Thu, 20 Jun 2019 17:58:54 +0000 (17:58 +0000)]
Merge "installer: Remove deprecated method WebInstallerOutput::addWikiText()"

2 years agoAPI: Update api-help-datatypes for Timestamp library changes
Brad Jorsch [Thu, 20 Jun 2019 16:55:34 +0000 (12:55 -0400)]
API: Update api-help-datatypes for Timestamp library changes

Instead of reproducing the documentation that's now at
https://www.mediawiki.org/wiki/Timestamp, let's just link to it.

Bug: T224730
Change-Id: I26c3bafc7cc9145b573c3ef84877633733be3cb1

2 years agoresourceloader: Remove 'Series60' from Grade C regex
Timo Tijhof [Thu, 20 Jun 2019 17:38:57 +0000 (18:38 +0100)]
resourceloader: Remove 'Series60' from Grade C regex

This existed to match UAs from the now-discontinued SymbianOS browser,
however, we already have 'SymbianOS' in the regex and all known
UA variants (which we have tests for) contain that phrase as well.

Change-Id: I643eb1e1df6a09873cda7d6fe2f325cd722b3ee5

2 years agoParser: Remove deprecated method Parser::fetchFile()
Derick Alangi [Wed, 5 Jun 2019 16:38:39 +0000 (17:38 +0100)]
Parser: Remove deprecated method Parser::fetchFile()

Deprecated in 1.32 and no longer used, see usage below;

Usage
=====

https://codesearch.wmflabs.org/search/?q=%5CbfetchFile%5C(%20(.*%3F)%2C%20(.*%3F)%20%5C)&i=nope&files=&repos=

Change-Id: Id0f76ee5c0e2a230dabb563c9d9e5c0a584f6b2c

2 years agoinstaller: Remove deprecated method WebInstallerOutput::addWikiText()
Derick Alangi [Wed, 5 Jun 2019 16:26:59 +0000 (17:26 +0100)]
installer: Remove deprecated method WebInstallerOutput::addWikiText()

Was deprecated in 1.32 and no longer used, hence removing from MW core.

Change-Id: I93c5dc1d74fd856c07b09e4c3028e223d2939522

2 years agoSome love to UserDupes
Reedy [Tue, 18 Jun 2019 19:41:38 +0000 (20:41 +0100)]
Some love to UserDupes

Change-Id: I9c0310c928a518e6f0ed13998603544fe441358e

2 years agoUpdate ObjectFactory and ConvertibleTimestamp
Gergő Tisza [Wed, 19 Jun 2019 17:58:20 +0000 (19:58 +0200)]
Update ObjectFactory and ConvertibleTimestamp

* wikimedia/object-factory -> 2.0.0
* wikimedia/timestamp -> 3.0.0
* wikimedia/xmp-reader -> 0.6.3

Needed for I5c0cc3a8. mediawiki/vendor equivalent is Iea05dc43.

Bug: T224729
Bug: T144482
Depends-On: Iea05dc439688871c574c639e617765ae88a75ff7
Change-Id: I6705a8d46f53ef807edab10f8f0cb0eba6b560dc

2 years agoMerge "Type hint against IResultWrapper in maintenance classes"
jenkins-bot [Thu, 20 Jun 2019 16:54:31 +0000 (16:54 +0000)]
Merge "Type hint against IResultWrapper in maintenance classes"

2 years agoMerge "Type hint against IResultWrapper in api classes"
jenkins-bot [Thu, 20 Jun 2019 16:54:25 +0000 (16:54 +0000)]
Merge "Type hint against IResultWrapper in api classes"

2 years agoMerge "Remove $wgUseKeyHeader and OutputPage::getKeyHeader(), deprecated in 1.32"
jenkins-bot [Thu, 20 Jun 2019 16:26:37 +0000 (16:26 +0000)]
Merge "Remove $wgUseKeyHeader and OutputPage::getKeyHeader(), deprecated in 1.32"

2 years agoMerge "Remove OutputPage::addWikitext()* functions, hard-deprecated in 1.32"
jenkins-bot [Thu, 20 Jun 2019 16:24:00 +0000 (16:24 +0000)]
Merge "Remove OutputPage::addWikitext()* functions, hard-deprecated in 1.32"

2 years agoMerge "Update monolog/monolog from 1.22.1 -> 1.24.0"
jenkins-bot [Thu, 20 Jun 2019 16:21:48 +0000 (16:21 +0000)]
Merge "Update monolog/monolog from 1.22.1 -> 1.24.0"

2 years agoAdd some @since tags to ParserOutput::SUPPORTS_ constants
Reedy [Thu, 20 Jun 2019 14:33:00 +0000 (15:33 +0100)]
Add some @since tags to ParserOutput::SUPPORTS_ constants

Change-Id: I2f6588fe563ed5c1dc5ef2a70e2ed59fdca99018

2 years agordbms: add replica server counting methods to ILoadBalancer
Aaron Schulz [Tue, 18 Jun 2019 21:12:06 +0000 (22:12 +0100)]
rdbms: add replica server counting methods to ILoadBalancer

This is slightly more robust and makes the intent much clearer
than random calling code checking getServerCount() all over the
place. In addition, this yields better separation of concern.

Also, cleanup the LoadBalancer constructer a bit and make the
validation a bit stricter.

Make some server index comparisons strict while at it.

Change-Id: Icc1a35bd65c6862ff81faa3ab9b2aa7cafe29443

2 years agoMerge "resourceloader: Document which FileModule methods use a DB"
jenkins-bot [Thu, 20 Jun 2019 11:22:07 +0000 (11:22 +0000)]
Merge "resourceloader: Document which FileModule methods use a DB"

2 years agoMerge "Fix wfLocalFile() replacement"
jenkins-bot [Thu, 20 Jun 2019 11:02:36 +0000 (11:02 +0000)]
Merge "Fix wfLocalFile() replacement"

2 years agoMerge "resourceloader: Switch Xml::encodeJsCall call in getDeprecationInformation"
jenkins-bot [Thu, 20 Jun 2019 10:50:10 +0000 (10:50 +0000)]
Merge "resourceloader: Switch Xml::encodeJsCall call in getDeprecationInformation"

2 years agoFix wfLocalFile() replacement
Lucas Werkmeister [Thu, 20 Jun 2019 10:01:03 +0000 (12:01 +0200)]
Fix wfLocalFile() replacement

This bit of ImageListPager used to call wfLocalFile(), but was
accidentally replaced with the replacement for wfFindFile() instead.

Bug: T226102
Change-Id: Id50a5359fe2353ae88012d1f5a3331f570b73922

2 years agoDisable flaky Selenium test
Kosta Harlan [Thu, 20 Jun 2019 01:43:47 +0000 (21:43 -0400)]
Disable flaky Selenium test

Change-Id: Ia3f2403e452f4476238b349c9d6a6f8135267456
Follows-Up: Iaf7e095b3bb34072eea6bcac76ba29358b14cc09
Bug: T226144

2 years agoresourceloader: Remove my `@author` comments from unit tests
Timo Tijhof [Thu, 20 Jun 2019 00:24:50 +0000 (01:24 +0100)]
resourceloader: Remove my `@author` comments from unit tests

Previously removed from includes/ already.

Also remove odd `@package`, which we never use.
And remove `@since` which doesn't make sense for test-only files.

Change-Id: Ib7265d39329ecadd5279b11820f77f54189b55d2

2 years agoMerge "AutoLoader: Skip tokenizing of irrelevant lines in ClassCollector"
jenkins-bot [Thu, 20 Jun 2019 00:00:55 +0000 (00:00 +0000)]
Merge "AutoLoader: Skip tokenizing of irrelevant lines in ClassCollector"

2 years agoresourceloader: Document which FileModule methods use a DB
Timo Tijhof [Wed, 19 Jun 2019 22:44:39 +0000 (23:44 +0100)]
resourceloader: Document which FileModule methods use a DB

Also, for the unit test, disable the two methods we use there
that can get called. The unintended side-effects of these two
methods was the only reason it used `@group Database`.
Removing that makes the test a bit faster as well.

Enforce this via MediaWikiServices for this suite to avoid an
untracked dependency slipping back in in the future.

Bug: T225730
Change-Id: I6c54466e9517d9899bc39f8f9bb946369c0a526d

2 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 19 Jun 2019 21:35:03 +0000 (23:35 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I4b61ff429f73f4d8252206f6613551d20b5b230f

2 years agoMerge "Remove deprecated ApiAction logging code from ApiMain.php"
jenkins-bot [Wed, 19 Jun 2019 20:47:01 +0000 (20:47 +0000)]
Merge "Remove deprecated ApiAction logging code from ApiMain.php"

2 years agoType hint against IResultWrapper in api classes
Umherirrender [Wed, 19 Jun 2019 19:43:51 +0000 (21:43 +0200)]
Type hint against IResultWrapper in api classes

Change-Id: If3870e6b8d343dd12390f5155d97edbbe080ac77

2 years agoType hint against IResultWrapper in maintenance classes
Umherirrender [Wed, 19 Jun 2019 19:42:32 +0000 (21:42 +0200)]
Type hint against IResultWrapper in maintenance classes

Change-Id: I6a58e9cfe645056a854c80b2db1e71fb59bd226b

2 years agoMerge "Reduce selector specificity"
jenkins-bot [Wed, 19 Jun 2019 19:32:17 +0000 (19:32 +0000)]
Merge "Reduce selector specificity"

2 years agoRemove OutputPage::enableSectionEditLinks(), ParserOptions::get/setEditSection()
C. Scott Ananian [Wed, 19 Jun 2019 18:49:22 +0000 (14:49 -0400)]
Remove OutputPage::enableSectionEditLinks(), ParserOptions::get/setEditSection()

These methods were deprecated in 1.31, and most of the related code
was removed in b4e557f8f8a72d4539e0cf5f83add4eef8df418b but these three
methods appear to have been overlooked.

Change-Id: Iea6c8b1b628a7b6acf9b65497966af9fc4ab662e