Aaron Schulz [Thu, 14 Mar 2019 02:29:36 +0000 (19:29 -0700)]
rdbms: improve database connection loss handling
Avoid throwing errors in Database::replaceLostConnection()
Bug: T218226
Change-Id: Id07f305816c61f62aaf1ae893f5d37c03c865f46
Krinkle [Fri, 15 Mar 2019 01:16:53 +0000 (01:16 +0000)]
Merge "rdbms: make Database::query() more readable and consistent"
Krinkle [Fri, 15 Mar 2019 01:00:26 +0000 (01:00 +0000)]
Merge "objectcache: make BagOStuff::add() abstract to discourage non-atomic versions"
Krinkle [Fri, 15 Mar 2019 00:56:31 +0000 (00:56 +0000)]
Merge "objectcache: make the BagOStuff::add() operation more atomic for WinCache"
Krinkle [Fri, 15 Mar 2019 00:56:02 +0000 (00:56 +0000)]
Merge "objectcache: make the BagOStuff::add() operation more atomic for APC"
jenkins-bot [Fri, 15 Mar 2019 00:51:19 +0000 (00:51 +0000)]
Merge "objectcache: add BagOStuff::deleteMulti() method for consistency"
Aaron Schulz [Tue, 12 Mar 2019 10:02:24 +0000 (03:02 -0700)]
objectcache: make BagOStuff::add() abstract to discourage non-atomic versions
Change-Id: If3c3fbf21207b0c74cad8a29fa5bbabe0af896e3
Aaron Schulz [Tue, 12 Mar 2019 10:01:37 +0000 (03:01 -0700)]
objectcache: make the BagOStuff::add() operation more atomic for WinCache
Change-Id: I285ed9a7d0894adfe29b0bdc106b7518f655ba45
Aaron Schulz [Tue, 12 Mar 2019 09:49:59 +0000 (02:49 -0700)]
objectcache: make the BagOStuff::add() operation more atomic for APC
Change-Id: Ifb72b1c17439c80e6d431d5fe2ec9ad9437e3ad7
jenkins-bot [Fri, 15 Mar 2019 00:33:22 +0000 (00:33 +0000)]
Merge "user: Avoid page_touched update in User::saveSettings"
jenkins-bot [Fri, 15 Mar 2019 00:15:57 +0000 (00:15 +0000)]
Merge "Deprecate Profiler::profileIn and Profiler::profileOut stubs"
jenkins-bot [Fri, 15 Mar 2019 00:10:06 +0000 (00:10 +0000)]
Merge "filebackend: change "profiler" parameter in FileBackend so it works again"
jenkins-bot [Fri, 15 Mar 2019 00:02:35 +0000 (00:02 +0000)]
Merge "rdbms: change "profiler" argument in Database::factory so it works again"
Aaron Schulz [Thu, 14 Mar 2019 23:46:44 +0000 (16:46 -0700)]
user: Avoid page_touched update in User::saveSettings
This was added in r42179 (
65bbc147836aa) and only CDN and object caches
need purging.
Change-Id: I7ca40f8eda15ffeac3aa21aa4445b993d9fcc131
Aaron Schulz [Tue, 12 Mar 2019 07:38:56 +0000 (00:38 -0700)]
objectcache: add BagOStuff::deleteMulti() method for consistency
Also:
* Make the BagOStuff tests actually pass for memcached and sql
* Add more unit tests for BagOStuff
* Make SqlBagOStuff::add() more atomic
Change-Id: Ic1eec0990a66b595b57c646498c3bd229442230c
Aaron Schulz [Thu, 14 Mar 2019 01:56:26 +0000 (18:56 -0700)]
rdbms: make Database::query() more readable and consistent
Mainly:
* Stash trxLevel as the variable $priorTransaction since
Database::replaceLostConnection might make it 0 when called.
* Factor out Database::beginIfImplied method and call it on
each query attempt of query(), not just the first one.
* Do not bother setting STATUS_TRX_ERROR if a query fails due to
connection issues and was recoverable since requiring ROLLBACK
in order to continue has no real advantage.
* Do not bother setting trxDoneWrites/lastWriteTime for temporary
table operations.
* Make Database::handleTransactionLoss() keep TransactionProfiler
cleaner by calling Database::transactionWritingOut().
Also:
* Make sure Database::wasKnownStatementRollbackError() calls are
right after the corresponding queries so it is easy to follow.
Having connection attempts in between seems fragile.
* Rename Database::doProfiledQuery => Database::attemptQuery and
move more logic to that method.
* Factor out Database::assertNeitherReplicaNorReadOnly method.
* Rename Database::assertOpen => Database::assertHasConnectionHandle.
* Fix wording of Database::wasKnownStatementRollbackError comments.
* Use $isEffectiveWrite variable name instead of $isNonTempWrite
and $isWrite in some places.
Bug: T218226
Change-Id: I2063e4080b41d5fc504f9207a56312ce92130ed7
Aaron Schulz [Wed, 13 Mar 2019 18:18:22 +0000 (11:18 -0700)]
Deprecate Profiler::profileIn and Profiler::profileOut stubs
Change-Id: I2a8764d2464883e9fe66048e97b688c5a76d595a
Aaron Schulz [Wed, 13 Mar 2019 18:14:19 +0000 (11:14 -0700)]
filebackend: change "profiler" parameter in FileBackend so it works again
The Profiler::profileIn and Profiler::profileOut methods are just stubs.
Use a callback to the Profile::scopedProfileIn method instead.
Change-Id: I7b493c145357994f61faebfbe3f65d38d2e6da42
Aaron Schulz [Wed, 13 Mar 2019 18:11:18 +0000 (11:11 -0700)]
rdbms: change "profiler" argument in Database::factory so it works again
The Profiler::profileIn and Profiler::profileOut methods are just stubs.
Use a callback to the Profiler::scopedProfileIn method instead.
Change-Id: I16068bce583bb880250fe91235f2283453be5e4c
jenkins-bot [Thu, 14 Mar 2019 22:14:23 +0000 (22:14 +0000)]
Merge "Avoid using outdated $casToken field for BagOStuff calls"
jenkins-bot [Thu, 14 Mar 2019 22:14:18 +0000 (22:14 +0000)]
Merge "Avoid sending duplicate ProfilerOutputText comments/html"
jenkins-bot [Thu, 14 Mar 2019 21:58:58 +0000 (21:58 +0000)]
Merge "rdbms: make query exceptions include the backtrace when logged"
jenkins-bot [Thu, 14 Mar 2019 21:58:53 +0000 (21:58 +0000)]
Merge "rdbms: clarify $uniqueIndexes argument to replace()/upsert()"
Translation updater bot [Thu, 14 Mar 2019 21:37:35 +0000 (22:37 +0100)]
Localisation updates from https://translatewiki.net.
Change-Id: I2157943a62f159425a99eb7a577658b813681678
jenkins-bot [Thu, 14 Mar 2019 18:58:23 +0000 (18:58 +0000)]
Merge "Fix assertArrayEquals() calls with bogus 3rd parameter"
jenkins-bot [Thu, 14 Mar 2019 18:42:17 +0000 (18:42 +0000)]
Merge "objectcache: make the $flags argument appear more consistently in BagOStuff"
jenkins-bot [Thu, 14 Mar 2019 17:39:24 +0000 (17:39 +0000)]
Merge "SpecialContributions: Conditionally hide the namespace checkboxes"
jenkins-bot [Thu, 14 Mar 2019 17:39:18 +0000 (17:39 +0000)]
Merge "SpecialWatchlist: Conditionally hide the namespace checkboxes"
Thiemo Kreuz [Thu, 14 Mar 2019 13:53:41 +0000 (14:53 +0100)]
Fix assertArrayEquals() calls with bogus 3rd parameter
This issue came up in I8a49143, see
https://integration.wikimedia.org/ci/job/mediawiki-quibble-vendor-postgres-php70-docker/2453/console
The third parameter of assertArrayEquals() is called $ordered and is
meant to take the order of elements into account. Providing a string sets
this to true. The SQL query in ChangesListSpecialPageTest seems to behave
a bit random in Postgres and does not always return the elements in the
same order. This is fine. It's just the assertion that was to strict, by
accident.
I found a few more instances of the same issue with a regular expression.
In most cases I intentionally changed it to assertSame() because the order
of elements is actually guaranteed by the code, and needs to be (e.g.
mixing width and height of an image would be fatal).
Change-Id: Ice66cab873a7271d55809a486ce28cf637e43e33
jenkins-bot [Thu, 14 Mar 2019 16:09:11 +0000 (16:09 +0000)]
Merge "Throw exception on wrong type in Language::isValidCode( $code )"
jenkins-bot [Thu, 14 Mar 2019 16:09:05 +0000 (16:09 +0000)]
Merge "Site: Explicit allow setLanguageCode( null )"
jenkins-bot [Thu, 14 Mar 2019 14:44:11 +0000 (14:44 +0000)]
Merge "Make copyTestData work on postgres"
jenkins-bot [Thu, 14 Mar 2019 13:17:47 +0000 (13:17 +0000)]
Merge "Add a user preference to opt in or out of a confirmation prompt for rollbacks."
jenkins-bot [Thu, 14 Mar 2019 12:41:22 +0000 (12:41 +0000)]
Merge "Add MessagesNqo.php"
jenkins-bot [Thu, 14 Mar 2019 11:07:39 +0000 (11:07 +0000)]
Merge "Update OOUI to v0.31.0"
jenkins-bot [Thu, 14 Mar 2019 10:07:38 +0000 (10:07 +0000)]
Merge "Language: Use Assert::parameterType for type checks"
Amir Aharoni [Mon, 4 Mar 2019 12:52:08 +0000 (14:52 +0200)]
Add MessagesNqo.php
The export from translatewiki was not done yet,
but there is good localization activity,
and having this file will allow correct RTL layout.
Bug: T152908
Change-Id: I8cfc718af5e96ce9d902d1bf5400a3bb2971acde
MaxSem [Thu, 14 Mar 2019 05:41:52 +0000 (05:41 +0000)]
Merge "Avoid page table query spam in HistoryPager due to lastLink()"
James D. Forrester [Thu, 14 Mar 2019 01:03:02 +0000 (18:03 -0700)]
Update OOUI to v0.31.0
Release notes:
https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.31.0
Bug: T215645
Bug: T217471
Bug: T217584
Bug: T217952
Bug: T218271
Depends-On: Icc14a3662039080f1a65d098004640366351f0bb
Change-Id: Icc14a3662039080f1a65d098004640366351f0ba
jenkins-bot [Wed, 13 Mar 2019 23:31:02 +0000 (23:31 +0000)]
Merge "Remove references to Html5Depurate"
jenkins-bot [Wed, 13 Mar 2019 22:23:50 +0000 (22:23 +0000)]
Merge "Avoid a few overly complicated is_null() checks"
Subramanya Sastry [Wed, 13 Mar 2019 21:33:37 +0000 (16:33 -0500)]
Remove references to Html5Depurate
Change-Id: I4f07c5ae606f5c86242bb7d299f4f30a044860b4
daniel [Mon, 4 Mar 2019 22:01:38 +0000 (23:01 +0100)]
Make copyTestData work on postgres
The issue with SQLite mentioned in the ticket remains unresolved
for now. To make this less confusing, copyTestData() will throw
for sqlite with an explanation instead of failing later. The test
for copyTestData is skipped on sqlite as well.
Bug: T217607
Change-Id: Ib9baa15cb6feff6c06959359f846b94ae6efab07
Translation updater bot [Wed, 13 Mar 2019 20:58:23 +0000 (21:58 +0100)]
Localisation updates from https://translatewiki.net.
Change-Id: I0b3266b3300731491affb838bb287496fe942d3a
Aaron Schulz [Wed, 13 Mar 2019 16:12:47 +0000 (09:12 -0700)]
rdbms: make query exceptions include the backtrace when logged
Previously, the corresponding Exception channel entry was relied on for
the backtrace, though there might not always be one.
Change-Id: I4a3b0fec0beaec1ebfe71be3850aa353cd37d562
Aaron Schulz [Wed, 13 Mar 2019 18:31:58 +0000 (11:31 -0700)]
Avoid page table query spam in HistoryPager due to lastLink()
Pass in the Title so there is not an extra query for each revision.
Change-Id: I0d36422a304c31c4bda0a408ef4a6fcd52ad57f1
jenkins-bot [Wed, 13 Mar 2019 18:11:21 +0000 (18:11 +0000)]
Merge "resourceloader: Remove redundant var-freeing in addScript()"
jenkins-bot [Wed, 13 Mar 2019 17:59:14 +0000 (17:59 +0000)]
Merge "resourceloader: Reduce size of ES5 StringSet fallback"
jenkins-bot [Wed, 13 Mar 2019 17:59:08 +0000 (17:59 +0000)]
Merge "resourceloader: Minor optimisation in variable declarations"
Aaron Schulz [Wed, 13 Mar 2019 17:27:38 +0000 (10:27 -0700)]
Avoid sending duplicate ProfilerOutputText comments/html
Change-Id: I4130845cdb7208b8456740e5dbaf8bf96e175f49
Arlo Breault [Wed, 6 Mar 2019 21:49:07 +0000 (16:49 -0500)]
parser: closeParagraph already resets the lastSection
Change-Id: Ic24c9aa25852cc786a5ca438c2c1e9031f9e7c17
Aaron Schulz [Wed, 13 Mar 2019 03:09:21 +0000 (20:09 -0700)]
rdbms: clarify $uniqueIndexes argument to replace()/upsert()
Also make upsert() match replace() for consistency.
Change-Id: I208f3ab810a61c6949ac0050436767675f99a60b
jenkins-bot [Wed, 13 Mar 2019 00:27:11 +0000 (00:27 +0000)]
Merge "Replace sorting classes with better naming convention"
Aaron Schulz [Tue, 12 Mar 2019 07:30:34 +0000 (00:30 -0700)]
objectcache: make the $flags argument appear more consistently in BagOStuff
Change-Id: I08879ede5e9f0ab227497bb1dab89ea61b65abce
Translation updater bot [Tue, 12 Mar 2019 21:09:11 +0000 (22:09 +0100)]
Localisation updates from https://translatewiki.net.
Change-Id: I2887536cb78f5b4780550b67a2fde8aaf7530a97
jenkins-bot [Tue, 12 Mar 2019 17:55:18 +0000 (17:55 +0000)]
Merge "LogEntry: Restore logic to add change tags on udp-only publish"
Ottomata [Tue, 12 Mar 2019 17:23:12 +0000 (17:23 +0000)]
Merge "ApiMain.php api/request logging event changes"
jenkins-bot [Tue, 12 Mar 2019 16:35:00 +0000 (16:35 +0000)]
Merge "Add password policy setting `suggestChangeOnLogin`"
Andrew Otto [Fri, 8 Mar 2019 21:50:34 +0000 (16:50 -0500)]
ApiMain.php api/request logging event changes
- Use 'Z' UTC timezone on dt
- Don't provide empty arrays if no data entries
- No need to set X-Request-Id in http.request_headers, it is meta.request_id
Bug: T214080
Bug: T212529
Change-Id: I37aa41a46ce74b372070e88a2f4da746fcbe2449
Fomafix [Wed, 27 Jun 2018 10:16:26 +0000 (12:16 +0200)]
Throw exception on wrong type in Language::isValidCode( $code )
This prevents that Language::isValidCode( null ) returns true.
Depends-On: I38d8358469903afb15331212206635283cedcd46
Change-Id: I5dc5bd45d648a548dfd27aaa1b3c29a2e99f0e8b
Brad Jorsch [Tue, 12 Mar 2019 14:55:27 +0000 (10:55 -0400)]
LogEntry: Restore logic to add change tags on udp-only publish
This was unintentionally removed in I8df2fd98.
Bug: T218110
Change-Id: Ie8678b4207032d6eb877d596eb8f115798c80a1e
Fomafix [Tue, 26 Jun 2018 07:30:39 +0000 (09:30 +0200)]
Site: Explicit allow setLanguageCode( null )
$site->setLanguageCode( null ) is already used in
DBSiteStore::loadSites and this worked because
Language::isValidCode( null ) === true.
This change explicit check for null and allow to set null without
depending on Language::isValidCode( null ) === true.
Change-Id: I0c9fe03cbf1434b0340e61e96360c0aaeb0fe89d
Fomafix [Tue, 12 Mar 2019 08:53:49 +0000 (09:53 +0100)]
Language: Use Assert::parameterType for type checks
Depends-On: Ib0cb388958cf720052ca6df73d5145b7ab3f9529
Change-Id: I8287118cf8ec01326ead9c90a38f7b4134c3eba9
jenkins-bot [Tue, 12 Mar 2019 08:35:09 +0000 (08:35 +0000)]
Merge "Remove deprecated ParserOutput::legacyOptions"
jenkins-bot [Tue, 12 Mar 2019 07:33:57 +0000 (07:33 +0000)]
Merge "Improve documentation of the PageContentLanguage hook"
Volker E [Sat, 19 Jan 2019 02:24:21 +0000 (18:24 -0800)]
Replace sorting classes with better naming convention
Improving CSS structure by removing code duplications.
Bug: T214218
Change-Id: I0501e1ab934aef3af289fee618b99578a1f0285c
Niklas Laxström [Wed, 6 Mar 2019 12:23:06 +0000 (13:23 +0100)]
Improve documentation of the PageContentLanguage hook
Clarify that the type of second parameter that is being passed
to the hooks can be anything because one hook can change it and
then it is passed to another hook without the hook caller having
possibility to check or modify the value.
Clarify that hooks should only return Language objects.
Rename $wgLang to $userLang in the hook parameter documentation to
avoid false posivite matches for the global.
Fix some typos, use Title::inNamespace and add a test assertion.
Also, the $content parameter is unused by all implementations of
this method, and on quick look never passed by any caller. I kept
it for now, however.
Bug: T214358
Change-Id: Iae49d2998c2b762565d232c0337d84d43a4a900c
Aaron Schulz [Tue, 12 Mar 2019 06:39:29 +0000 (23:39 -0700)]
Avoid using outdated $casToken field for BagOStuff calls
Change-Id: Ic9bcb388e4f50e2ae16ae57aa16113e79b43350b
Aaron Schulz [Fri, 8 Mar 2019 22:31:01 +0000 (14:31 -0800)]
Remove deprecated ParserOutput::legacyOptions
Change-Id: I5f32dd741f3ee795ec599aacb687d5cee2c52835
jenkins-bot [Tue, 12 Mar 2019 04:25:50 +0000 (04:25 +0000)]
Merge "jobqueue: allow direct server configuration arrays to JobQueueDB"
jenkins-bot [Tue, 12 Mar 2019 04:22:19 +0000 (04:22 +0000)]
Merge "Add sanity check to notifyUpdatesForRevision() for $oldRev"
jenkins-bot [Tue, 12 Mar 2019 04:20:02 +0000 (04:20 +0000)]
Merge "resourceloader: Reword and expand doc comment about FileModule "packageFiles""
Aaron Schulz [Sun, 10 Mar 2019 19:56:34 +0000 (12:56 -0700)]
resourceloader: Reword and expand doc comment about FileModule "packageFiles"
Change-Id: Id9d68205504ecbddea6ca248e108f368fdcac2d2
jenkins-bot [Tue, 12 Mar 2019 02:14:39 +0000 (02:14 +0000)]
Merge "logging: Start using LinkTarget & UserIdentity in ManualLogEntry"
Translation updater bot [Mon, 11 Mar 2019 20:55:59 +0000 (21:55 +0100)]
Localisation updates from https://translatewiki.net.
Change-Id: I7ee423c084fbe33d4731e43ce5506f6a6f0c40be
jenkins-bot [Mon, 11 Mar 2019 20:28:07 +0000 (20:28 +0000)]
Merge "Fix the order of the parameters for htmlform-title-badnamespace"
jenkins-bot [Mon, 11 Mar 2019 20:27:59 +0000 (20:27 +0000)]
Merge "Bump minimum SQLite version to 3.8.0"
jenkins-bot [Mon, 11 Mar 2019 18:34:01 +0000 (18:34 +0000)]
Merge "Fix small typos"
jenkins-bot [Mon, 11 Mar 2019 18:30:56 +0000 (18:30 +0000)]
Merge "Linker: Use RequestContext::getMain()->getLanguage() instead of $wgLang"
Fomafix [Mon, 11 Mar 2019 16:50:46 +0000 (17:50 +0100)]
OutputPage: Use $this->getUser()
Use $this->getUser() instead of $this->getContext()->getUser().
ContextSource::getUser is a shortcut for $this->getContext()->getUser().
Change-Id: I7d19116b634500cd1a435bebe235c7562889f7bb
jenkins-bot [Mon, 11 Mar 2019 14:37:48 +0000 (14:37 +0000)]
Merge "Avoid using stale data for revision visibility and actor data"
jenkins-bot [Mon, 11 Mar 2019 12:39:04 +0000 (12:39 +0000)]
Merge "Streamline code involving .= string concatenations"
Thiemo Kreuz [Thu, 7 Mar 2019 09:55:31 +0000 (10:55 +0100)]
Streamline code involving .= string concatenations
This was inspired by Idbbdb31. Originally, I did a regex search for
code that did string concatenations like `$str = $str . …` and replaced
them all with the .= operator. A duplicate patch was uploaded by another
author. I rebeased this patch on top of the other, which leaves all
the manual optimizations I did.
Change-Id: Iaeb73d9c63302c9409bd1051b91e0d2bd77788a7
Thiemo Kreuz [Mon, 11 Mar 2019 09:29:20 +0000 (10:29 +0100)]
Avoid a few overly complicated is_null() checks
We can use the ?? syntax introduced with PHP 7.0 because it is already
supported by HHVM, even when HHVM is set to be compatible with PHP 5.6.
This was inspired by Ib117e05.
Change-Id: If980839fe6f86f2b4e86bbe99905a796e4708c7c
Max Semenik [Sat, 29 Sep 2018 02:44:45 +0000 (19:44 -0700)]
Bump minimum SQLite version to 3.8.0
3.3.7 is 12 years old, no chance in hell you will find it somewhere
that supports modern MediaWiki. Since Ubuntu 14.04 LTS has 3.8.2, this
seems like a reasonable conservative version.
Change-Id: I5fbb35bd2d4c0993889b79f463a3c35ce6765d3b
jenkins-bot [Sun, 10 Mar 2019 23:37:07 +0000 (23:37 +0000)]
Merge "ProtectionForm: Add type hint to ::showLogExtract() header"
Translation updater bot [Sun, 10 Mar 2019 20:56:09 +0000 (21:56 +0100)]
Localisation updates from https://translatewiki.net.
Change-Id: Ibf7f5a6cc435b330df709d40f8ea0687c65832c5
Bill Pirkle [Wed, 27 Feb 2019 21:26:17 +0000 (15:26 -0600)]
Avoid using stale data for revision visibility and actor data
Created class RevisionStoreCacheRecord to avoid returning stale
cached revision visibility and actor data when changes were
made after the cache was populated for that revision.
Bug: T216159
Change-Id: Iabed80e06a08ff0793dfe64db881cbcd535cb13f
jenkins-bot [Sun, 10 Mar 2019 20:14:52 +0000 (20:14 +0000)]
Merge "mediawiki.cookie: Export config via packageFiles"
Derick Alangi [Sun, 10 Mar 2019 18:12:48 +0000 (19:12 +0100)]
ProtectionForm: Add type hint to ::showLogExtract() header
https://codesearch.wmflabs.org/core/?q=showLogExtract%5C(&i=nope&files=&repos=
according to codesearch shows that this method takes as first argument an output
page object and also, objects are passed by reference by default so removed &.
Change-Id: I167ae6300b37d4e9292bd8ad14351f1ca35184d2
Max Semenik [Sun, 10 Mar 2019 08:08:44 +0000 (00:08 -0800)]
Remove a few method_exists() checks
These functions are present in every PHP version we support now.
Change-Id: I11add0fc9f6c3c3caff859db9c0475c4d2818577
jenkins-bot [Sun, 10 Mar 2019 05:33:59 +0000 (05:33 +0000)]
Merge "installer: Code augmentation in wfInstallerMain function"
jenkins-bot [Sun, 10 Mar 2019 03:34:17 +0000 (03:34 +0000)]
Merge "Add @var to class properties to clarify types"
jenkins-bot [Sun, 10 Mar 2019 03:25:36 +0000 (03:25 +0000)]
Merge "Move class HistoryPager to own file"
jenkins-bot [Sun, 10 Mar 2019 03:20:09 +0000 (03:20 +0000)]
Merge "Move class RangeDifference to own file"
jenkins-bot [Sun, 10 Mar 2019 03:15:24 +0000 (03:15 +0000)]
Merge "Remove suppress of PhanRedefineFunctionInternal"
Timo Tijhof [Sat, 9 Mar 2019 02:46:38 +0000 (02:46 +0000)]
mediawiki.cookie: Export config via packageFiles
* Add a private setDefaults() method to allow mocking from
unit tests.
* Use matching keys between the data export and the API.
* Reduce duplication in the code.
* Access the Sinon stub explicitly instead of via the public path.
* Remove use of the now-redundant QUnit.newMwEnvironment().
Change-Id: I600332cdb738f0b443549948b9f070f3ccfa12aa
jenkins-bot [Sat, 9 Mar 2019 23:56:19 +0000 (23:56 +0000)]
Merge "maintenance: Replace deprecated global $wgParser with getParser() service"
Derick Alangi [Sat, 9 Mar 2019 22:37:49 +0000 (23:37 +0100)]
maintenance: Replace deprecated global $wgParser with getParser() service
$wgParser is deprecated and using globals should also be avoid. So, replacing
the use of global $wgParser by a mediawiki service.
Change-Id: I34b61338e500567773249c71da0a7125cfd50d02
jenkins-bot [Sat, 9 Mar 2019 22:38:59 +0000 (22:38 +0000)]
Merge "installer: Remove redundant $key variable"