2 years agoMake config-outdated-sqlite parameter numbers consistent with config-*-old
Reedy [Sun, 26 May 2019 19:14:03 +0000 (20:14 +0100)]
Make config-outdated-sqlite parameter numbers consistent with config-*-old

Bug: T224374
Change-Id: Iebfb8299234cc9c66db0ecc4abd0c0a32af63602

2 years agoFix typo of Minimum in variable name
Reedy [Sun, 26 May 2019 19:08:18 +0000 (20:08 +0100)]
Fix typo of Minimum in variable name

Change-Id: I0d0ef26f59721039b2c24ab322fa3bf6ab16fea1

2 years agoMerge "Switch empty username logging from warning to debug."
jenkins-bot [Sun, 26 May 2019 13:09:04 +0000 (13:09 +0000)]
Merge "Switch empty username logging from warning to debug."

2 years agoJob: Fix typo in exception message for invalid specification
Máté Szabó [Sun, 26 May 2019 12:22:45 +0000 (14:22 +0200)]
Job: Fix typo in exception message for invalid specification

The Job::factory method throws an InvalidArgumentException if a given
job specification is invalid. The error message for this exception was
worded in correctly. This patch improves the message to avoid confusion.

Change-Id: I6cab739263c1d3530c0650823db022dd5a4b60bc

2 years agoMerge "Rename $search to $engine to match hook docs for SpecialSearchSetupEngine"
jenkins-bot [Sat, 25 May 2019 21:50:08 +0000 (21:50 +0000)]
Merge "Rename $search to $engine to match hook docs for SpecialSearchSetupEngine"

2 years agoMerge "Introduce TransactionRoundAwareUpdate interface"
jenkins-bot [Sat, 25 May 2019 21:37:35 +0000 (21:37 +0000)]
Merge "Introduce TransactionRoundAwareUpdate interface"

2 years agoMerge "rdbms: fix ChronologyProtector client IDs to not be empty"
jenkins-bot [Sat, 25 May 2019 21:36:36 +0000 (21:36 +0000)]
Merge "rdbms: fix ChronologyProtector client IDs to not be empty"

2 years agoRename $search to $engine to match hook docs for SpecialSearchSetupEngine
Reedy [Sat, 25 May 2019 21:12:45 +0000 (22:12 +0100)]
Rename $search to $engine to match hook docs for SpecialSearchSetupEngine

Bug: T224353
Change-Id: I9629840531183ffd53f2a1c568a8a72c91a30171

2 years agordbms: fix ChronologyProtector client IDs to not be empty
Aaron Schulz [Wed, 22 May 2019 18:00:55 +0000 (11:00 -0700)]
rdbms: fix ChronologyProtector client IDs to not be empty

Follow up to 8107fddd8fe3d5

Also improve debug logging and add some unit tests

Bug: T223310
Bug: T223978
Change-Id: I35484385e4da2912bc10f5e8d2fb07cb1097347e

2 years agoIntroduce TransactionRoundAwareUpdate interface
Aaron Schulz [Tue, 21 May 2019 21:52:57 +0000 (14:52 -0700)]
Introduce TransactionRoundAwareUpdate interface

Refactor the deferred update transaction round handling code to use
a new TransactionRoundAwareUpdate interface. Also, rename a few
DeferredUpdates methods so they do not give the impression that
doUpdates() is always called.

Change-Id: Idc4c6d81c4e2ca0ce41bca1e7800f797fa7e37f6

2 years agoSwitch empty username logging from warning to debug.
Bill Pirkle [Sat, 25 May 2019 02:14:42 +0000 (21:14 -0500)]
Switch empty username logging from warning to debug.

Change ddd1d4b9203a added logging when an empty username is
passed to various Linker.php functions. The logging revealed
this occuring on live, but it is occuring frequently and
causing distracting log noise. Switch the logging type from
warning to debug while the root cause is investigated.

Bug: T224050
Change-Id: I93826e486951e992afdf778f446792d3c209996a

2 years agoMerge "AllMessagesTablePager: Use $this->msg instead of wfMessage"
jenkins-bot [Fri, 24 May 2019 22:16:07 +0000 (22:16 +0000)]
Merge "AllMessagesTablePager: Use $this->msg instead of wfMessage"

2 years agoAllMessagesTablePager: Use $this->msg instead of wfMessage
Fomafix [Sat, 9 Jun 2018 17:05:15 +0000 (19:05 +0200)]
AllMessagesTablePager: Use $this->msg instead of wfMessage

Change-Id: I20850e20b2749e4fe3391d5d3fbdb7dadbfced8d

2 years agoMerge "API: Add IGNORE INDEX to avoid bad plan in ApiQueryRevisions"
jenkins-bot [Fri, 24 May 2019 21:56:57 +0000 (21:56 +0000)]
Merge "API: Add IGNORE INDEX to avoid bad plan in ApiQueryRevisions"

2 years agoMerge "Rename CDN config variables to be generic, deprecating the old names"
jenkins-bot [Fri, 24 May 2019 21:39:53 +0000 (21:39 +0000)]
Merge "Rename CDN config variables to be generic, deprecating the old names"

2 years agoMerge "changes: Remove unused FeedUtils::checkPurge method"
jenkins-bot [Fri, 24 May 2019 21:39:47 +0000 (21:39 +0000)]
Merge "changes: Remove unused FeedUtils::checkPurge method"

2 years agoRename CDN config variables to be generic, deprecating the old names
James D. Forrester [Wed, 1 Nov 2017 20:55:24 +0000 (13:55 -0700)]
Rename CDN config variables to be generic, deprecating the old names

Hook, methods, classes still to rename where appropriate.

Bug: T104148
Depends-On: Id34339dff88bc6d1863378ac94b96b2d590b891d
Depends-On: I4e2938395bcbf7956b83fff00978f09c61dcfa36
Change-Id: I7a725dae551c867a4fa7c213838d52c7fb862756

2 years agoMake MediaWiki::preOutputCommit() handle PRESEND deferred updates with the "run"...
Aaron Schulz [Fri, 24 May 2019 21:05:12 +0000 (14:05 -0700)]
Make MediaWiki::preOutputCommit() handle PRESEND deferred updates with the "run" parameter

This means that enqueuable updates (LinksUpdate, LinksDeletionUpdate) will run immediately
at this point rather than be enqueued as jobs. This only affects ApiPurge since the other
callers use either POSTSEND or "false".

Change-Id: I8b6ff6c9a68730374e6d83682e774e4f4bfbf52f

2 years agoCleanup DerivedPageDataUpdater::doSecondaryDataUpdates and remove redundant caller...
Aaron Schulz [Fri, 24 May 2019 21:01:17 +0000 (14:01 -0700)]
Cleanup DerivedPageDataUpdater::doSecondaryDataUpdates and remove redundant caller option

Change-Id: I8bbc6cd76d035635d47d1158df34c625879a8cc3

2 years agoMerge "languages: Hard deprecate Language::getExtraUserToggles() method"
jenkins-bot [Fri, 24 May 2019 18:17:21 +0000 (18:17 +0000)]
Merge "languages: Hard deprecate Language::getExtraUserToggles() method"

2 years agolanguages: Hard deprecate Language::getExtraUserToggles() method
Derick Alangi [Sat, 23 Feb 2019 17:38:51 +0000 (18:38 +0100)]
languages: Hard deprecate Language::getExtraUserToggles() method

This seems to be still used internally in core but in no extension. Also,
this function really doesn't do anything so hard deprecating in preparation
for removal.

Bug: T62260
Change-Id: I568789483084a97e5b3b462235f3d00c3cb87cf9

2 years agoMerge "Correct typo in Block::chooseBlock documentation"
jenkins-bot [Fri, 24 May 2019 14:56:29 +0000 (14:56 +0000)]
Merge "Correct typo in Block::chooseBlock documentation"

2 years agoMerge "SpecialBlockList: Merge stylesheet in into 'mediawiki.special' bundle"
jenkins-bot [Fri, 24 May 2019 14:51:59 +0000 (14:51 +0000)]
Merge "SpecialBlockList: Merge stylesheet in into 'mediawiki.special' bundle"

2 years agoSpecialBlockList: Merge stylesheet in into 'mediawiki.special' bundle
Timo Tijhof [Fri, 24 May 2019 14:10:27 +0000 (15:10 +0100)]
SpecialBlockList: Merge stylesheet in into 'mediawiki.special' bundle

Follows-up d87220349536 and (before that) 15eac4c27939c.

Bug: T191549
Change-Id: I60f227283526cf7e45b2e8e2be17d25bb73d9a27

2 years agoCorrect typo in Block::chooseBlock documentation
Thalia [Fri, 24 May 2019 13:52:16 +0000 (14:52 +0100)]
Correct typo in Block::chooseBlock documentation

Change-Id: Ie7cf0a833b38aac71b217f97d4934461acd249fd

2 years agoMerge "resourceloader: Use AND instead of OR for upsert conds in saveFileDependencies()"
jenkins-bot [Fri, 24 May 2019 13:37:43 +0000 (13:37 +0000)]
Merge "resourceloader: Use AND instead of OR for upsert conds in saveFileDependencies()"

2 years agochanges: Remove unused FeedUtils::checkPurge method
Timo Tijhof [Fri, 24 May 2019 13:09:51 +0000 (14:09 +0100)]
changes: Remove unused FeedUtils::checkPurge method

This introduced for use by ChangesFeed::execute(), which in turn
has also been unused for many years – and removed in 6f4d15e385807.

Change-Id: I5ba7ea2b6ff86e4d210b77bf05971c183352424c

2 years agoresourceloader: Use AND instead of OR for upsert conds in saveFileDependencies()
Reedy [Thu, 23 May 2019 23:16:42 +0000 (00:16 +0100)]
resourceloader: Use AND instead of OR for upsert conds in saveFileDependencies()

Follows-up e7b57d881a, which changed it from replace() to upsert()
but lost one of the wrapping arrays in doing so.

Previously updated many more rows than expected on Postgresql, when it
should only be updating individual rows, not all rows that match either

SQL query before:
 WHERE ((md_module = 'jquery.makeCollapsible.styles') OR (md_skin = 'vector|en-gb'))

SQL query after:
 WHERE ((md_module = 'jquery.makeCollapsible.styles' AND md_skin = 'vector|en-gb'))

Not a problem on MySQL as upsert() is implemented differently there.

Bug: T222385
Change-Id: If8a458bf4543b297b3a06f31e09c0e77666bf7e6

2 years agochange phabricator URL
Eugene Gvozdetsky [Fri, 24 May 2019 10:37:27 +0000 (12:37 +0200)]
change phabricator URL

bugs.mediawiki.org was changed to phabricator.mediawiki.org because now it is the correct address

Change-Id: Ic7a728ce627ee7e6ef715d4144eb81aaf6f831dc

2 years agoMerge "jquery.suggestions: Trigger keypress on initializing"
jenkins-bot [Fri, 24 May 2019 00:24:48 +0000 (00:24 +0000)]
Merge "jquery.suggestions: Trigger keypress on initializing"

2 years agoMerge "Pass in __METHOD__ to upsert() in ResourceLoaderModule::saveFileDependencies()"
jenkins-bot [Thu, 23 May 2019 23:42:36 +0000 (23:42 +0000)]
Merge "Pass in __METHOD__ to upsert() in ResourceLoaderModule::saveFileDependencies()"

2 years agoPass in __METHOD__ to upsert() in ResourceLoaderModule::saveFileDependencies()
Reedy [Thu, 23 May 2019 22:59:42 +0000 (23:59 +0100)]
Pass in __METHOD__ to upsert() in ResourceLoaderModule::saveFileDependencies()

Change-Id: I9cc7636d14dbfc57ad9f21a0d8bbd7dd4c86760d

2 years agoMerge "Fix user talk checkbox enabling/disabling on Special:Block"
jenkins-bot [Thu, 23 May 2019 22:10:27 +0000 (22:10 +0000)]
Merge "Fix user talk checkbox enabling/disabling on Special:Block"

2 years agoMerge "Introduce MovePage::moveSubpages(IfAllowed)"
jenkins-bot [Thu, 23 May 2019 20:25:01 +0000 (20:25 +0000)]
Merge "Introduce MovePage::moveSubpages(IfAllowed)"

2 years agoMerge "logger: Produce traces for all Throwables"
jenkins-bot [Thu, 23 May 2019 20:20:46 +0000 (20:20 +0000)]
Merge "logger: Produce traces for all Throwables"

2 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 23 May 2019 20:13:29 +0000 (22:13 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Icedbc0be6be532f0d6d3324dbcd2be43da25f5da

2 years agoFix user talk checkbox enabling/disabling on Special:Block
Thalia [Wed, 22 May 2019 21:47:54 +0000 (22:47 +0100)]
Fix user talk checkbox enabling/disabling on Special:Block

Partial blocks ignore the ipb_allow_usertalk field, so the user
talk checkbox should be disabled on Special:Block when creating
a partial block.

The checkbox is already disabled for partial blocks against
editing. This also disables the checkbox for partial blocks that
do not involve editing.

Bug: T224032
Change-Id: I2519ab30a90872d90f05861c65ab943d7937d9fa

2 years agoMerge "Fix variable in ApiQueryProtectedTitles"
jenkins-bot [Thu, 23 May 2019 18:40:21 +0000 (18:40 +0000)]
Merge "Fix variable in ApiQueryProtectedTitles"

2 years agoAPI: Add IGNORE INDEX to avoid bad plan in ApiQueryRevisions
Brad Jorsch [Thu, 23 May 2019 16:58:19 +0000 (12:58 -0400)]
API: Add IGNORE INDEX to avoid bad plan in ApiQueryRevisions

None of the queries generated by ApiQueryRevisions should be using the
`rev_timestamp` index, but MariaDB is insisting on doing so for one
particular query anyway.

Bug: T224017
Change-Id: I9476532d5896d9ba901c4c7398890bfecb1a318d

2 years agoMerge "ApiSandbox: Move labels outside progress bars"
jenkins-bot [Thu, 23 May 2019 17:56:06 +0000 (17:56 +0000)]
Merge "ApiSandbox: Move labels outside progress bars"

2 years agoFix variable in ApiQueryProtectedTitles
Matěj Suchánek [Wed, 22 May 2019 18:07:08 +0000 (20:07 +0200)]
Fix variable in ApiQueryProtectedTitles

Linker::formatComment accepts a Title object or null whereas
$titles is an array. I was working hard to reproduce a failure
but I couldn't since this code will only be executed with
an empty array (which evaluates to false when if-checked).
Per Anomie's suggestion, there should be no argument.

Discovered using phan.

Change-Id: I5a4df146d077cd879347709a399dce8303f41ccc

2 years agoMerge "ApiQueryRevisions: Fix error message key"
jenkins-bot [Thu, 23 May 2019 16:32:39 +0000 (16:32 +0000)]
Merge "ApiQueryRevisions: Fix error message key"

2 years agoMerge "ApiSandbox: Use CopyTextLayouts for snippets"
jenkins-bot [Thu, 23 May 2019 16:03:23 +0000 (16:03 +0000)]
Merge "ApiSandbox: Use CopyTextLayouts for snippets"

2 years agoMerge "CopyTextLayout: Support multiline text"
jenkins-bot [Thu, 23 May 2019 16:01:14 +0000 (16:01 +0000)]
Merge "CopyTextLayout: Support multiline text"

2 years agoMerge "Upstream CopyTextLayout from UrlShortener extension"
jenkins-bot [Thu, 23 May 2019 16:00:13 +0000 (16:00 +0000)]
Merge "Upstream CopyTextLayout from UrlShortener extension"

2 years agoMerge "Enable configuration to supply options for Special:Search form"
jenkins-bot [Thu, 23 May 2019 14:48:55 +0000 (14:48 +0000)]
Merge "Enable configuration to supply options for Special:Search form"

2 years agologger: Produce traces for all Throwables
Brad Jorsch [Thu, 23 May 2019 14:19:06 +0000 (10:19 -0400)]
logger: Produce traces for all Throwables

The code was checking for `Exception` to decide whether to produce traces,
so it wasn't providing them for PHP 7's new Errors. The code itself
works fine with any Throwable.

We have to keep parallel checks for Exception too for the time being,
because HHVM as used in Wikimedia production doesn't have Throwable.

Bug: T187147
Change-Id: Iec8a6718beb7ec09e45e332ee5762d0644ce17ab

2 years agoApiSandbox: Use CopyTextLayouts for snippets
Ed Sanders [Thu, 23 May 2019 11:55:42 +0000 (12:55 +0100)]
ApiSandbox: Use CopyTextLayouts for snippets

Change-Id: I1cdda7f5c1da9fed820ec9c39349457bb5060a7b

2 years agoCopyTextLayout: Support multiline text
Ed Sanders [Thu, 23 May 2019 11:54:58 +0000 (12:54 +0100)]
CopyTextLayout: Support multiline text

Change-Id: I9049f5a1c0d88680fc4a174e390dd08e27c0eee2

2 years agoUpstream CopyTextLayout from UrlShortener extension
Ed Sanders [Wed, 22 May 2019 18:54:04 +0000 (19:54 +0100)]
Upstream CopyTextLayout from UrlShortener extension

Provides a generic widget feature a read-only text input
and a copy button, that writes the text to the clipboard.

Change-Id: Ibeb5df2a2928a68297f4209562d7ab3f17cad6f0

2 years agoApiSandbox: Move labels outside progress bars
Ed Sanders [Thu, 23 May 2019 11:56:19 +0000 (12:56 +0100)]
ApiSandbox: Move labels outside progress bars

Change-Id: I3ebaae6733df85054679b4b7ff792039b50b4ef9

2 years agoMerge "HTMLForm: Improve method documentation for setCollapsibleOptions()"
jenkins-bot [Thu, 23 May 2019 09:26:17 +0000 (09:26 +0000)]
Merge "HTMLForm: Improve method documentation for setCollapsibleOptions()"

2 years agoImageListPager: Use explicit escaped() instead of implicit __toString()
Fomafix [Thu, 23 May 2019 07:00:53 +0000 (09:00 +0200)]
ImageListPager: Use explicit escaped() instead of implicit __toString()

For the messages listfiles-latestversion-yes and
listfiles-latestversion-no a wikitext parsing is not necessary.

Change-Id: I6f9268ebabaa64494d8680b04990944e7a463f32

2 years agoEnable configuration to supply options for Special:Search form
Stanislav Malyshev [Sun, 19 May 2019 14:12:14 +0000 (16:12 +0200)]
Enable configuration to supply options for Special:Search form

This for example will allow to display descriptions by setting:

$wgSpecialSearchFormOptions['showDescriptions'] = true;

Bug: T55652

Change-Id: Ifdbca4c508314cb950f2835ee65caea18e0af5b1

2 years agoHTMLForm: Improve method documentation for setCollapsibleOptions()
Timo Tijhof [Wed, 22 May 2019 22:38:45 +0000 (23:38 +0100)]
HTMLForm: Improve method documentation for setCollapsibleOptions()

Follows-up 36d33daa03a63.

Previously the method was described as "Set whether the form can be collapsed"
taking a single boolean.

Yet, the boolean did not influence whether the form can be collapsed, as one
might expect.

Rather, this method always enable collapsible mode. The thing that is set
based on the passed value is the default state of that (unconditionally)
enabled collapsible mode.

Change-Id: I2e73d5481c44ed43769553b2bc25543a702c19b8

2 years agoMerge "objectcache: make detectLocalServerCache() prefer apcu over apc"
jenkins-bot [Wed, 22 May 2019 22:37:14 +0000 (22:37 +0000)]
Merge "objectcache: make detectLocalServerCache() prefer apcu over apc"

2 years agoobjectcache: make detectLocalServerCache() prefer apcu over apc
Aaron Schulz [Wed, 22 May 2019 16:30:50 +0000 (09:30 -0700)]
objectcache: make detectLocalServerCache() prefer apcu over apc

Bug: T220470
Change-Id: I8b85859b3991d2360a74107299d44da2c60d0214

2 years agoMerge "resourceloader: Add tests for StartUpModule dep tree optimisation"
jenkins-bot [Wed, 22 May 2019 22:09:12 +0000 (22:09 +0000)]
Merge "resourceloader: Add tests for StartUpModule dep tree optimisation"

2 years agoMerge "registration: Add development requirements to extension.json"
jenkins-bot [Wed, 22 May 2019 21:41:48 +0000 (21:41 +0000)]
Merge "registration: Add development requirements to extension.json"

2 years agoMerge "resourceloader: Make MessageBlobStore global check key actually global"
jenkins-bot [Wed, 22 May 2019 21:27:38 +0000 (21:27 +0000)]
Merge "resourceloader: Make MessageBlobStore global check key actually global"

2 years agoresourceloader: Add tests for StartUpModule dep tree optimisation
Timo Tijhof [Wed, 22 May 2019 18:29:09 +0000 (19:29 +0100)]
resourceloader: Add tests for StartUpModule dep tree optimisation

Bug: T223402
Change-Id: I0450c052852068f3c78312f48a42645a8b77bc5c

2 years agoMerge "Fix some docs"
jenkins-bot [Wed, 22 May 2019 20:43:56 +0000 (20:43 +0000)]
Merge "Fix some docs"

2 years agoMerge "Work around disappearing Special:Preferences buttons on RTL in Edge"
jenkins-bot [Wed, 22 May 2019 20:35:31 +0000 (20:35 +0000)]
Merge "Work around disappearing Special:Preferences buttons on RTL in Edge"

2 years agoMerge "Reference T224165 when deprecating Parser::$mConf"
jenkins-bot [Wed, 22 May 2019 20:29:23 +0000 (20:29 +0000)]
Merge "Reference T224165 when deprecating Parser::$mConf"

2 years agoWork around disappearing Special:Preferences buttons on RTL in Edge
Bartosz Dziewoński [Wed, 22 May 2019 19:35:48 +0000 (21:35 +0200)]
Work around disappearing Special:Preferences buttons on RTL in Edge

Bug: T220706
Change-Id: If36dbade88f7594dea658f899f891e800c98529d

2 years agoMerge "npm: bump grunt-karma to 3.0.2"
jenkins-bot [Wed, 22 May 2019 20:01:19 +0000 (20:01 +0000)]
Merge "npm: bump grunt-karma to 3.0.2"

2 years agoMerge "Fix doc in maintenance/findHooks.php"
jenkins-bot [Wed, 22 May 2019 19:58:51 +0000 (19:58 +0000)]
Merge "Fix doc in maintenance/findHooks.php"

2 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 22 May 2019 19:58:06 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic10472cce88fd44322506beb2330cc49f5d22fb0

2 years agoFix some docs
Matěj Suchánek [Wed, 22 May 2019 19:50:52 +0000 (21:50 +0200)]
Fix some docs

Discovered by phan.

Change-Id: Iadc2b151db6922f3159f061f10408d45636967c5

2 years agoIntroduce MovePage::moveSubpages(IfAllowed)
Aryeh Gregor [Tue, 16 Apr 2019 13:51:04 +0000 (16:51 +0300)]
Introduce MovePage::moveSubpages(IfAllowed)

Title::moveSubpages() is now deprecated, and the one caller in core and
extensions was ported.

Change-Id: Ic1dc5a6f1a1bef89a35c13f0a72f6740c6a01c50

2 years agoApiQueryRevisions: Fix error message key
Bartosz Dziewoński [Wed, 22 May 2019 19:07:43 +0000 (21:07 +0200)]
ApiQueryRevisions: Fix error message key

Change-Id: Ib5cbbfe53b2da27025fd27fb0361eec444ee7e69

2 years agoExternalStore: Pass external domain to getReadOnlyReason
Jesús Martínez Novo [Mon, 22 Apr 2019 09:21:52 +0000 (11:21 +0200)]
ExternalStore: Pass external domain to getReadOnlyReason

Be consistent with other paths of code that supply the external domain
id to LoadBalancer instead of defaulting to the wiki's domain.

This was causing the getReadOnlyReason to fail because it tries to
connect to the local wiki database using external storage credentials.

Bug: T200471
Change-Id: Ie73ea931d5c93f967624ee67717f87c2d9a31559

2 years agoMerge "objectcache: check apc.serializer in APCBagOStuff like APCUBagOStuff"
jenkins-bot [Wed, 22 May 2019 18:46:21 +0000 (18:46 +0000)]
Merge "objectcache: check apc.serializer in APCBagOStuff like APCUBagOStuff"

2 years agoReference T224165 when deprecating Parser::$mConf
daniel [Wed, 22 May 2019 18:16:22 +0000 (20:16 +0200)]
Reference T224165 when deprecating Parser::$mConf

Bug: T224165
Change-Id: I98225ad03e4060dbc956905da01fdfe671526694

2 years agoresourceloader: Make MessageBlobStore global check key actually global
Timo Tijhof [Mon, 20 May 2019 23:02:47 +0000 (00:02 +0100)]
resourceloader: Make MessageBlobStore global check key actually global

Because it was still per-wiki, which isn't useful and makes
it really slow to invalidate by requiring a 900-wiki iteration
during deployments all of which fully initialise MW just to
send a single Memcached command basically.

Bug: T222539
Change-Id: I02a3e7d83172ccd7d8d0fba3be1e3f1ebb77efb2

2 years agoMerge "Configure LoadBalancer with $wgSharedTables after WAN cache autodetection"
jenkins-bot [Wed, 22 May 2019 17:38:46 +0000 (17:38 +0000)]
Merge "Configure LoadBalancer with $wgSharedTables after WAN cache autodetection"

2 years agoMerge "jquery.tablesorter: Fix pre-JS selector to match wikitext-generated sortable...
jenkins-bot [Wed, 22 May 2019 17:11:17 +0000 (17:11 +0000)]
Merge "jquery.tablesorter: Fix pre-JS selector to match wikitext-generated sortable tables"

2 years agoobjectcache: check apc.serializer in APCBagOStuff like APCUBagOStuff
Aaron Schulz [Wed, 22 May 2019 16:58:10 +0000 (09:58 -0700)]
objectcache: check apc.serializer in APCBagOStuff like APCUBagOStuff

This mirrors a1389b602411

Change-Id: Iad6b104337dfd38c74f363ce76c36aedcc3da425

2 years agoConfigure LoadBalancer with $wgSharedTables after WAN cache autodetection
Máté Szabó [Wed, 22 May 2019 16:03:50 +0000 (18:03 +0200)]
Configure LoadBalancer with $wgSharedTables after WAN cache autodetection

Currently, $wgSharedTables - if configured - is injected into the LoadBalancer
before the WAN cache autodetection runs. As such, if $wgSharedTables is set
but $wgMainWANCache was not explicitly given, the LoadBalancer will force
a premature instantion of the WAN cache with an EmptyBagOStuff backend,
preventing the autodetection logic from setting a correct backend.
This change moves $wgSharedTables initialization after the WAN cache
autodetection to accunt for this scenario.

Change-Id: I59bb52f42905cda1c2aa47bc589a2f0b36b2a28f

2 years agoMerge "Deprecate $wgWikiDiff2MovedParagraphDetectionCutoff"
jenkins-bot [Wed, 22 May 2019 14:50:35 +0000 (14:50 +0000)]
Merge "Deprecate $wgWikiDiff2MovedParagraphDetectionCutoff"

2 years agoMerge "Make some array type hints more specific"
jenkins-bot [Wed, 22 May 2019 14:18:31 +0000 (14:18 +0000)]
Merge "Make some array type hints more specific"

2 years agoDeprecate $wgWikiDiff2MovedParagraphDetectionCutoff
Adam Wight [Wed, 22 May 2019 13:42:20 +0000 (15:42 +0200)]
Deprecate $wgWikiDiff2MovedParagraphDetectionCutoff

Bug: T194272
Change-Id: I174192dc2b91409e023c06b054bc1bba8bfc571f

2 years agoMerge "Exclude FileImporter browser tests"
jenkins-bot [Wed, 22 May 2019 12:28:33 +0000 (12:28 +0000)]
Merge "Exclude FileImporter browser tests"

2 years agoMake some array type hints more specific
Thiemo Kreuz [Wed, 22 May 2019 11:37:12 +0000 (13:37 +0200)]
Make some array type hints more specific

Change-Id: Ia9ed6fa851316baa47e73d9a5988a863d15f298c

2 years agoMerge "EditPage: Migrate Title::userCan() calls to PermissionManager"
jenkins-bot [Wed, 22 May 2019 11:18:36 +0000 (11:18 +0000)]
Merge "EditPage: Migrate Title::userCan() calls to PermissionManager"

2 years agoMerge "externalstore: make ExternalStoreDB::getDomainId treat false the same as null"
jenkins-bot [Wed, 22 May 2019 10:38:34 +0000 (10:38 +0000)]
Merge "externalstore: make ExternalStoreDB::getDomainId treat false the same as null"

2 years agoMerge "Add additional configuation parameters to RESTBagOStuff"
jenkins-bot [Wed, 22 May 2019 10:13:55 +0000 (10:13 +0000)]
Merge "Add additional configuation parameters to RESTBagOStuff"

2 years agoMerge "Don't pass Config to Parser(Factory)"
jenkins-bot [Wed, 22 May 2019 10:13:48 +0000 (10:13 +0000)]
Merge "Don't pass Config to Parser(Factory)"

2 years agoMerge "registration: Fix validation of ext-foo values"
jenkins-bot [Wed, 22 May 2019 10:12:52 +0000 (10:12 +0000)]
Merge "registration: Fix validation of ext-foo values"

2 years agoMerge "Fix logic in NamespaceInfo::getRestrictionLevels"
jenkins-bot [Wed, 22 May 2019 09:48:08 +0000 (09:48 +0000)]
Merge "Fix logic in NamespaceInfo::getRestrictionLevels"

2 years agoMerge "WikiPage: Make prepareContentForEdit method not accept an integer"
jenkins-bot [Wed, 22 May 2019 09:23:57 +0000 (09:23 +0000)]
Merge "WikiPage: Make prepareContentForEdit method not accept an integer"

2 years agoregistration: Add development requirements to extension.json
Kunal Mehta [Sun, 19 May 2019 09:17:56 +0000 (02:17 -0700)]
registration: Add development requirements to extension.json

Extensions can specify development dependencies in extension.json under
the "dev-requires" key. It's identical to the "requires" field.

Any requirement that is needed to pass tests, including but not limited
to, PHPUnit, QUnit, structure, phan, should be documented in this new
field. The main intention is that CI will ensure that all of these
dependencies are satisfied before running tests.

At standard runtime, the development requirements will be ignored by
MediaWiki, since it only checks for real requirements. Scripts can
manually check development requirements by calling
ExtensionRegistry::setCheckDevRequires( true ) before trying to load

If both "requires" and "dev-requires" are present, MediaWiki will merge
the two together, so the environment will need to satisfy both before

Bug: T193824
Change-Id: I9b2936666ee3c96f5c976c7a17f11c437c2c7f48

2 years agoregistration: Fix validation of ext-foo values
Kunal Mehta [Wed, 22 May 2019 08:57:05 +0000 (01:57 -0700)]
registration: Fix validation of ext-foo values

Our json-schema library doesn't yet support "const" (at least not in a
released version), so use "enum" with one element, since it's functionally
equivalent per <https://json-schema.org/understanding-json-schema/reference/generic.html#constant-values>.

Change-Id: Ib9ebb5c6b9d07903fa47603fbe54a148e9c00352

2 years agoFix doc in maintenance/findHooks.php
Matěj Suchánek [Wed, 22 May 2019 08:34:34 +0000 (10:34 +0200)]
Fix doc in maintenance/findHooks.php

Change-Id: Iad3f2fc0910049dbfd5039f3589dd3f3918f1392

2 years agoWikiPage: Make prepareContentForEdit method not accept an integer
Matěj Suchánek [Tue, 21 May 2019 18:17:20 +0000 (20:17 +0200)]
WikiPage: Make prepareContentForEdit method not accept an integer

This has been deprecated since 1.25.

Bug: T220656
Change-Id: I94f5cb78adcfbec1fdafd89495c045e6f8fd9246

2 years agoMerge "rdbms: improve query logging logic in Database"
jenkins-bot [Tue, 21 May 2019 22:12:32 +0000 (22:12 +0000)]
Merge "rdbms: improve query logging logic in Database"

2 years agoMerge "watchlist: make getLatestNotificationTimestamp() method use the correct user"
jenkins-bot [Tue, 21 May 2019 22:01:03 +0000 (22:01 +0000)]
Merge "watchlist: make getLatestNotificationTimestamp() method use the correct user"

2 years agonpm: bump grunt-karma to 3.0.2
Michael Holloway [Tue, 21 May 2019 21:26:41 +0000 (17:26 -0400)]
npm: bump grunt-karma to 3.0.2

`npm install` currently fails due to an unsatisfied peer dependency.
See full output here:


Bumping the required grunt-karma version to the latest (3.0.2) fixes

Change-Id: I5b7f2deba2d766b809a964f53cb22f47f0617bd6

2 years agoexternalstore: make ExternalStoreDB::getDomainId treat false the same as null
Aaron Schulz [Sun, 21 Apr 2019 19:57:05 +0000 (12:57 -0700)]
externalstore: make ExternalStoreDB::getDomainId treat false the same as null

Callers like SqlBlobStore sometimes pass in false for the current wiki

Bug: T200471
Change-Id: I3025c869df07de312471d00a0ab7107c1fa14a90

2 years agoRemoved 'public $user' as it is deprecated in 1.29
zoranzoki21 [Tue, 21 May 2019 20:54:52 +0000 (22:54 +0200)]
Removed 'public $user' as it is deprecated in 1.29

Change-Id: If9c59d432e4b8b91b8c81200bf3a8a910461eded