jenkins-bot [Mon, 30 Apr 2018 05:12:17 +0000 (05:12 +0000)]
Merge "jquery.ui: Use on() instead of deprecated bind() in jquery.ui.mouse"
jenkins-bot [Mon, 30 Apr 2018 04:58:41 +0000 (04:58 +0000)]
Merge "media: Rename files to match the name of the class they define"
Translation updater bot [Sun, 29 Apr 2018 19:58:14 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I13de2b5cedae52d2b709e8a6a3e1764ce47412ac
jenkins-bot [Sun, 29 Apr 2018 17:22:15 +0000 (17:22 +0000)]
Merge "resourceloader: Use plain arrays instead of $.Callbacks() in addEmbeddedCSS"
Translation updater bot [Sat, 28 Apr 2018 19:59:14 +0000 (21:59 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I45de1a7e52aa2b6531442a9e5deeaa359c6c9efd
jenkins-bot [Sat, 28 Apr 2018 19:51:10 +0000 (19:51 +0000)]
Merge "mail: Refactor checks looking for PEAR libraries to be clearer"
jenkins-bot [Sat, 28 Apr 2018 17:57:43 +0000 (17:57 +0000)]
Merge "Update wikimedia/html-formatter from 1.0.1 to 1.0.2"
Reedy [Sat, 21 Apr 2018 09:46:51 +0000 (09:46 +0000)]
Add since tag to wfRemoveDotSegments
Looked it up for another commit, so might aswell make it easier to find for others :)
Change-Id: I432b13b35481cbca9ed6e7328b3b9115fdd203ea
jenkins-bot [Sat, 28 Apr 2018 12:04:30 +0000 (12:04 +0000)]
Merge "resourceloader: Remove mwPerformance stub and rename mwLoadStart mark"
Daimona Eaytoy [Fri, 20 Apr 2018 08:16:55 +0000 (10:16 +0200)]
Fix parameter doc type for matchEditToken
I noticed it while fixing some AbuseFilter errors. matchEditToken simply
calls getEditTokenObject, which accepts string|array as $salt.
Change-Id: I36497eb8797ee60759c5109b699643635bba9174
Reedy [Sat, 28 Apr 2018 11:49:36 +0000 (12:49 +0100)]
Update wikimedia/html-formatter from 1.0.1 to 1.0.2
https://github.com/wikimedia/html-formatter/releases/tag/1.0.2
https://github.com/wikimedia/html-formatter/compare/1.0.1...1.0.2
Bug: T193318
Change-Id: I5f7a3e2300f343f675124df399cfe12909f56e14
Depends-On: Ia69102af64a0102e05b96b10f63ffcf6cbf292fa
jenkins-bot [Sat, 28 Apr 2018 09:01:26 +0000 (09:01 +0000)]
Merge "Change @throw to @throws"
jenkins-bot [Sat, 28 Apr 2018 08:58:24 +0000 (08:58 +0000)]
Merge "Add missing use statement"
Timo Tijhof [Sat, 28 Apr 2018 01:05:23 +0000 (02:05 +0100)]
media: Rename files to match the name of the class they define
This will make jumping from file to file much easier in text
editors when file name lookups will autocomplete naturally when
looking for a class by name.
Change-Id: I4b2e55a2e72674b619d5a592866c8a019a2b0224
Timo Tijhof [Sat, 28 Apr 2018 00:16:03 +0000 (01:16 +0100)]
jquery.ui: Use on() instead of deprecated bind() in jquery.ui.mouse
Frequently seen on Beta Cluster due to indirect usage from
PageTriage extension.
Bug: T169385
Change-Id: Ia49ad6470aef1bcb1dd91c779dcd108a0a98d4dc
jenkins-bot [Fri, 27 Apr 2018 22:35:42 +0000 (22:35 +0000)]
Merge "Rewrite DumpRev to not always fatal out"
jenkins-bot [Fri, 27 Apr 2018 22:15:26 +0000 (22:15 +0000)]
Merge "EditPage: Remove isOouiEnabled(), deprecated since MW 1.30"
Bartosz Dziewoński [Tue, 5 Sep 2017 17:52:41 +0000 (19:52 +0200)]
EditPage: Remove isOouiEnabled(), deprecated since MW 1.30
Change-Id: I0ca2960ca4da5f7ec5acb254b30254809857bafa
Aaron Schulz [Tue, 27 Feb 2018 09:32:07 +0000 (01:32 -0800)]
Rewrite DumpRev to not always fatal out
* The method fetchBlob() is private.
* Also remove all of the code duplication.
Change-Id: Ie307a937bcfd835a3239af23fb8deeb78704e0fe
Umherirrender [Fri, 27 Apr 2018 21:09:55 +0000 (23:09 +0200)]
Add missing use statement
Change-Id: Id14d97b5b74edf6c6bafb29b643ac9b9357bb681
Translation updater bot [Fri, 27 Apr 2018 19:56:04 +0000 (21:56 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I060031447212e6e82254ee570a569fc2fc9fa749
Umherirrender [Fri, 27 Apr 2018 19:53:19 +0000 (21:53 +0200)]
Change @throw to @throws
Phpcs does not look at private functions
Change-Id: I9adedf1f1c488e74db7de89e97cb6a481bf7d567
jenkins-bot [Fri, 27 Apr 2018 12:36:33 +0000 (12:36 +0000)]
Merge "selenium: Clean up wdio.conf.js"
jenkins-bot [Fri, 27 Apr 2018 10:36:37 +0000 (10:36 +0000)]
Merge "Use PRC_AUTOPATROLLED for log entries and category entries"
jenkins-bot [Fri, 27 Apr 2018 05:20:55 +0000 (05:20 +0000)]
Merge "Revert "wikibits: Remove redundant stubs for document.write""
Aaron Schulz [Thu, 26 Apr 2018 21:18:43 +0000 (22:18 +0100)]
resourceloader: Use plain arrays instead of $.Callbacks() in addEmbeddedCSS
Bug: T192623
Change-Id: I00c9571d353980d853cc8e92b2b508ad7271ab87
jenkins-bot [Fri, 27 Apr 2018 02:37:30 +0000 (02:37 +0000)]
Merge "Fix warning "ob_end_flush(): failed to delete and flush buffer" during uploads"
Aaron Schulz [Fri, 27 Apr 2018 02:16:02 +0000 (19:16 -0700)]
Remove bogus @throws from HTTPFileStreamer
Change-Id: I28928a6f01b107b2aed8ab6fbeb013410a8f9718
jenkins-bot [Thu, 26 Apr 2018 20:18:50 +0000 (20:18 +0000)]
Merge "Skins: getDefaultStyles can now define render blocking CSS"
jdlrobson [Tue, 10 Apr 2018 01:22:13 +0000 (18:22 -0700)]
Skins: getDefaultStyles can now define render blocking CSS
This optimisation attempts to minimise loading the styles in places
they are not needed.
The logic is kept inside Skin::getDefaultModules to avoid fragmentation
of where modules get defined.
Update ApiParse to avoid repetition of code.
Bug: T42792
Bug: T42812
Change-Id: I59f02a7bab3baa9d43f6bc2ef1f549d9d31d8456
jenkins-bot [Thu, 26 Apr 2018 20:00:12 +0000 (20:00 +0000)]
Merge "rdbms: Replace reportConnectionError() with direct throws"
Translation updater bot [Thu, 26 Apr 2018 19:54:33 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I17a9d121043e13c6919378a0a88ad36d9f647ee8
Jforrester [Thu, 26 Apr 2018 18:23:51 +0000 (18:23 +0000)]
Revert "wikibits: Remove redundant stubs for document.write"
This reverts commit
7f2c6c401644c06b0bd30e311c6247bcaebec1bc.
Bug: T193191
Change-Id: Ia6bdc1e339fe0f6265094de6d3e0a5cea0919cd6
Roan Kattouw [Tue, 24 Apr 2018 19:48:35 +0000 (12:48 -0700)]
Use PRC_AUTOPATROLLED for log entries and category entries
These actions mark edits as patrolled automatically, so the
correct rc_patrolled value to use is PRC_AUTOPATROLLED rather than
PRC_PATROLLED. The code for log entries checks the autopatrol right, and
the code for category entries has a comment that says "just like log
entries".
Bug: T190408
Bug: T184791
Change-Id: Id994af8cd3833a862a09389431256aba35c2e6d9
Timo Tijhof [Sat, 14 Apr 2018 00:24:35 +0000 (01:24 +0100)]
selenium: Clean up wdio.conf.js
* Remove redundant user/pass for Jenkins, which is unused now
that Jenkins jobs set it through ENV instead.
See also T188520 and Ibb388741fee9 (integration/config).
* Use simple default operator (||) instead of elaborate
undefined check.
* Document that the inline user/password defaults relate to
MediaWiki vagrant.
* Set 'logPath' for Jenkins based on LOG_PATH env (from mw-set-env.sh),
instead of assuming where it will be relative to mediawiki-core.
* Put new lines between blocks and functions.
* Document --no-sandbox hack from
4ff5652501b6cd.
Change-Id: I4c7856d260ded8c94e991a27863b80c9eea2e33e
Kunal Mehta [Thu, 26 Apr 2018 05:24:24 +0000 (22:24 -0700)]
mail: Refactor checks looking for PEAR libraries to be clearer
I don't think this makes any difference towards the linked bug, but
it makes it more obvious that MediaWiki doesn't try to use any PEAR
classes before attempting to require them.
Bug: T186456
Change-Id: I342f41903a15f13e72e76464499351412a9afa34
jenkins-bot [Thu, 26 Apr 2018 05:11:56 +0000 (05:11 +0000)]
Merge "Filter autodiscovered parser tests in ConvertExtensionToRegistration"
jenkins-bot [Thu, 26 Apr 2018 05:06:46 +0000 (05:06 +0000)]
Merge "import: Don't try duplicate detection when the sha1 is unavailable"
Timo Tijhof [Thu, 19 Apr 2018 23:21:51 +0000 (00:21 +0100)]
rdbms: Replace reportConnectionError() with direct throws
When reading through DatabaseMysqlBase::open(), it was not
obvious that execution would not continue after the conditional
`!$this->conn` block, given it ends in a method call, without
return or throw. I considered adding a return statement after it
for clarity, but it seems in this case it might make more sense
to throw directly given $error here has already gone through a
fallback to getLastError() a few lines up.
Replace the other three calls to reportConnectionError() as well,
which previously passed a useful string that was overwritten
with lastError(). Instead, log both. And make their call to
queryLogger->error() match the previous ones to have an 'error' as well.
This leaves reportConnectionError() as being unused, except for
a call from LoadBalancer. That call was problematic because
it was inside a conditional for IDatabase, but the method isn't
part of that interface. Replace it with a direct throw as well.
Deprecate the method as its now unused in core, and also remove its
'# New method' comment which hasn't made sense since r75341 (
16cded8b32).
Change-Id: I0f2ef00ba44bf7090a3ce54edeb8c7e8e543e46a
James D. Forrester [Wed, 28 Feb 2018 23:03:26 +0000 (15:03 -0800)]
tests: Assert that the user who deleted a page is logged as such
These tests are rather basic, but they're better than the nothing that
seems to be the current state. Revision deletion is still untested and
suppression is only very lightly tested. More tests should be added.
Bug: T188479
Bug: T188773
Change-Id: Iba0f41ffddc6af45e0a4be86176708160f4821f4
jenkins-bot [Thu, 26 Apr 2018 00:16:09 +0000 (00:16 +0000)]
Merge "Introduce ResourceLoaderLessVarFileModule"
jenkins-bot [Wed, 25 Apr 2018 22:49:36 +0000 (22:49 +0000)]
Merge "RELEASE-NOTES: Move a deprecation to "Deprecations" section"
jenkins-bot [Wed, 25 Apr 2018 22:34:50 +0000 (22:34 +0000)]
Merge "phpunit: Clear job queues in MediaWikiTestCase::setUp()"
Bartosz Dziewoński [Wed, 25 Apr 2018 22:13:03 +0000 (00:13 +0200)]
RELEASE-NOTES: Move a deprecation to "Deprecations" section
Change-Id: Ibe4ce1ed4d209f3d111524074c9e6cbd5b889aa6
jenkins-bot [Wed, 25 Apr 2018 21:51:50 +0000 (21:51 +0000)]
Merge "Remove cssclass in the favor of 'type' => 'user'"
jenkins-bot [Wed, 25 Apr 2018 21:45:50 +0000 (21:45 +0000)]
Merge "Make setSubmitProgressive() Deprecate"
jenkins-bot [Wed, 25 Apr 2018 21:43:20 +0000 (21:43 +0000)]
Merge "Removed unused Module mediawiki.userSuggest"
Translation updater bot [Wed, 25 Apr 2018 20:23:18 +0000 (22:23 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I6b22a6cadf7bfb166074c8ce29d1de9e6c9d16a3
jdlrobson [Fri, 20 Apr 2018 18:42:41 +0000 (11:42 -0700)]
Introduce ResourceLoaderLessVarFileModule
This ResourceLoader module provides a way to ship
messages to CSS variables.
We will need this going forward to deal with flash of
unstyled content in various JavaScript based UIs that
are subject to i18n such as table sorting and
collapsible elements.
To avoid overhead of hitting the database to fetch and
transform localisation messages we make use of the MessageBlobStore
making use of `messages` definition already inside
ResourceLoaderFileModule. Given this resource is only intended
for render blocking styles without JavaScript this should be okay
(although if requested in JavaScript will also ship associated
messages)
Bug: T42812
Change-Id: I2bf12cdc848478889acbe9a7a970e46f8aefa287
jenkins-bot [Wed, 25 Apr 2018 17:09:11 +0000 (17:09 +0000)]
Merge "mail: Always quote uncoded names in MailAddress"
jenkins-bot [Wed, 25 Apr 2018 16:03:33 +0000 (16:03 +0000)]
Merge "ApiSandbox: Resize layout to fit content, and remove fullscreen mode"
jenkins-bot [Wed, 25 Apr 2018 15:40:35 +0000 (15:40 +0000)]
Merge "Fix unclear comments on various ChangeTags functions"
Ed Sanders [Tue, 24 Apr 2018 13:02:07 +0000 (14:02 +0100)]
ApiSandbox: Resize layout to fit content, and remove fullscreen mode
Avoids unpleasant nested scrollbars, and hacky fullscren mode.
Make toolbar position:sticky to keep buttons visible.
Bug: T129157
Change-Id: Ia3c3176c1bd7cac6af2c35f53d820f1272df72a5
jenkins-bot [Wed, 25 Apr 2018 12:04:17 +0000 (12:04 +0000)]
Merge "TraditionalImageGallery factor getCaptionHtml into own function"
Marius Hoch [Tue, 24 Apr 2018 15:52:56 +0000 (17:52 +0200)]
TraditionalImageGallery factor getCaptionHtml into own function
Better design and also want to override this in Wikibase.
Bug: T192869
Change-Id: I24de654ba9a14b8fe0925007e6ceeabca277c075
TTO [Mon, 23 Apr 2018 01:44:33 +0000 (01:44 +0000)]
Fix unclear comments on various ChangeTags functions
These functions tell you whether *a user* can perform the relevant
actions. They are not meant to be used by extensions, except when
the extension is performing these actions on behalf of a user.
Change-Id: I8437ec2d66c151f504755964e20fda808d35de3b
jenkins-bot [Wed, 25 Apr 2018 01:01:40 +0000 (01:01 +0000)]
Merge "PHPVersionCheck: Properly check for `xml` extension in PHP 7.2+"
Kunal Mehta [Sat, 14 Apr 2018 22:31:00 +0000 (15:31 -0700)]
PHPVersionCheck: Properly check for `xml` extension in PHP 7.2+
In 7.2, the `utf8_encode` function was moved into core PHP, and is no
longer a part of the `xml` extension. Use a different function to check
for the existence of it.
Change-Id: Ib50c1a59dd9c2a8777b07b2f7a3dd638a55832c6
Brad Jorsch [Tue, 28 Feb 2017 20:52:17 +0000 (15:52 -0500)]
Generalize ResourceLoader 'excludepage' functionality
There has long been a hack for previewing edits to user JS/CSS, where
OutputPage would pass an 'excludepage' parameter to
ResourceLoaderUserModule to tell it not to load one particular page and
would instead embed that page statically. That's nice, but there are
other places where we could use the same thing.
This patch generalizes it:
* DerivativeResourceLoaderContext may now contain a callback for mapping
titles to replacement Content objects.
* ResourceLoaderWikiModule::getContent() uses the overrides, and
requests embedding when they're used. All subclasses in Gerrit should
pick it up automatically.
* OutputPage gains methods for callers to add to the override mapping,
which it passes on to RL. It loses a bunch of the special casing it
had for the 'user' and 'user.styles' modules.
* EditPage sets the overrides on OutputPage when doing the preview, as
does ApiParse for prop=headhtml. TemplateSandbox does too in I83fa0856.
* OutputPage::userCanPreview() gets less specific to editing user CSS
and JS, since RL now handles the embedding based on the actual
modules' dependencies and EditPage only requests it on preview.
ApiParse also gets a new hook to support TemplateSandbox's API
integration (used in I83fa0856).
Bug: T112474
Change-Id: Ib9d2ce42931c1de8372e231314a1f672d7e2ac0e
jenkins-bot [Wed, 25 Apr 2018 00:26:11 +0000 (00:26 +0000)]
Merge "Align to WikimediaUI themed widgets"
jenkins-bot [Wed, 25 Apr 2018 00:24:33 +0000 (00:24 +0000)]
Merge "rdbms: make IDatabase::onTransaction* methods pass the DB handle for convenience"
jenkins-bot [Wed, 25 Apr 2018 00:24:30 +0000 (00:24 +0000)]
Merge "Update OOUI to v0.26.5"
jenkins-bot [Tue, 24 Apr 2018 23:59:38 +0000 (23:59 +0000)]
Merge "Special:PrefixIndex: Fix form legend"
Volker E [Tue, 24 Apr 2018 23:53:54 +0000 (16:53 -0700)]
Update OOUI to v0.26.5
Release notes:
https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.26.5
Depends-on: Ieed078f4113e5ac4770c9e5d1f778a02c18ac6b7
Change-Id: Ia5e491f765935c2bf4bfeac2d02f1978f1a03b50
Aaron Schulz [Tue, 17 Apr 2018 04:39:02 +0000 (21:39 -0700)]
rdbms: make IDatabase::onTransaction* methods pass the DB handle for convenience
Change-Id: Ia45a26830d62326b103593268fbf34c907783c90
Alexia E. Smith [Tue, 10 Apr 2018 22:10:33 +0000 (17:10 -0500)]
mail: Always quote uncoded names in MailAddress
Otherwise, names that contain whitespace (but no special characters
that need Q-encoding) will be sent as-is in an email header. While
that's valid by RFC 1036, RFC 5322 and others, some mail programs
fail to correctly process spaces. Avoid these problems by simply
quoting the name always - except for cases which are Q-encoded,
which must remain unquoted to be valid (and also cannot contain
spaces, thus unaffected).
Before:
> From: Foo Bar <fb@example.org>
After:
> From "Foo Bar" <fb@example.org>
Update test to work with the new criteria.
Bug: T191931
Change-Id: I4b2a0a80e8b43ecc943939fc5ebaa356a4f840e0
jenkins-bot [Tue, 24 Apr 2018 21:11:48 +0000 (21:11 +0000)]
Merge "resourceloader: Consider having dependencies as non-empty in WikiModule::isKnownEmpty"
jdlrobson [Tue, 24 Apr 2018 00:11:27 +0000 (17:11 -0700)]
resourceloader: Consider having dependencies as non-empty in WikiModule::isKnownEmpty
If a module itself is empty, it must consider any dependencies
it has before bailing out as empty.
Bug: T191596
Change-Id: I2b45b948a6f78060e53513d3b4b77f48d7bf4a6b
jenkins-bot [Tue, 24 Apr 2018 19:57:11 +0000 (19:57 +0000)]
Merge "SiteConfiguration: Add test to confirm null as valid override"
L10n-bot [Tue, 24 Apr 2018 19:55:30 +0000 (19:55 +0000)]
Merge "Localisation updates from https://translatewiki.net."
Translation updater bot [Tue, 24 Apr 2018 19:55:15 +0000 (21:55 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I08e57f36ecea92e65b4af4f03b22b8790b7e3f8f
jenkins-bot [Tue, 24 Apr 2018 19:54:25 +0000 (19:54 +0000)]
Merge "SiteConfiguration: Clean up test cases"
jenkins-bot [Tue, 24 Apr 2018 18:22:58 +0000 (18:22 +0000)]
Merge "Create Expiry Widget with Date Time Selector"
Timo Tijhof [Tue, 24 Apr 2018 17:30:24 +0000 (18:30 +0100)]
SiteConfiguration: Add test to confirm null as valid override
E.g. not being misinterpreted as unset or something like that.
Change-Id: I253f17a828ae47886d1c4f2ca5097a546c38d119
Timo Tijhof [Tue, 24 Apr 2018 17:28:43 +0000 (18:28 +0100)]
SiteConfiguration: Clean up test cases
Make a clear distinction between names of configuration keys,
and "magic" keys that relate to SiteConfiguration class options.
Previously words like 'tag', 'wiki', and 'params' were over-used
in the test fixture making it very hard to see what is what.
Change all the configuration keys to camelcase so that 'WithParams'
and 'params' are different strings.
Change-Id: I279e57e30fb0a858ffd1f883f0601e96354ddead
jenkins-bot [Tue, 24 Apr 2018 16:05:03 +0000 (16:05 +0000)]
Merge "Add "developer tools" preferences section"
jenkins-bot [Tue, 24 Apr 2018 15:55:16 +0000 (15:55 +0000)]
Merge "Remove onhashchange fallback code"
Bartosz Dziewoński [Fri, 3 Mar 2017 20:32:49 +0000 (21:32 +0100)]
mw.special.apisandbox: Offer to fill in token when not given
Change-Id: I53c414f0a80ce76907d3293971a47e87aa67fb06
Ed Sanders [Tue, 24 Apr 2018 12:40:34 +0000 (13:40 +0100)]
Remove onhashchange fallback code
We no longer support any browsers that don't have
the hashchange event.
Change-Id: I5e6bfd1d5c634df21b6b3d06dcf007112cdf15fa
jenkins-bot [Tue, 24 Apr 2018 11:38:28 +0000 (11:38 +0000)]
Merge "Fix width of OOUI TextInputWidget with .mw-editfont-... classes"
Gilles Dubuc [Tue, 24 Apr 2018 08:10:57 +0000 (10:10 +0200)]
Add "developer tools" preferences section
Under editing. Will be used for the ParserMigration
and PerformanceInspector extensions
Bug: T129322
Change-Id: Id98d8d5245f207bd817854e43794800e89fe0f50
Timo Tijhof [Mon, 23 Apr 2018 23:46:11 +0000 (00:46 +0100)]
phpunit: Clear job queues in MediaWikiTestCase::setUp()
This should fix the flaky unit test 'SiteStatsTest::testJobsCountGetCached',
which fails locally as follows, when run in isolation.
> 1) SiteStatsTest::testJobsCountGetCached
> A single job enqueued bumps jobscount stat to 1
> Failed asserting that 2 matches expected 1.
>
> /var/www/mediawiki/tests/phpunit/includes/SiteStatsTest.php:22
> /var/www/mediawiki/tests/phpunit/MediaWikiTestCase.php:421
> /var/www/mediawiki/maintenance/doMaintenance.php:94
Instrumenting JobQueueMemory::doBatchPush reveals the following
jobs to have been queued.
- MediaWikiTestCase->run/->addCoreDBData/::getTestSysop/..
../User->addGroup/UserGroupMembership->insert/..
> UserGroupExpiryJob (2)
- MediaWikiTestCase->run/->addCoreDBData/WikiPage->doEditContent/..
../WikiPage->{closure}/WikiPage->doEditUpdates/JobQueueGroup->lazyPush/..
> CategoryMembershipChangeJob
> HTMLCacheUpdateJob (2)
Fix this by adding clearing of job queues to doLightweightServiceReset()
in MediaWikiTestCase.
Also:
- Move the call to doLightweightServiceReset() from run() to setUp(),
where it is easier to understand in context. It still runs at the same
logical point because PHPUnit calls setUp() right before run().
- Remove redundant reset for WANObjectCache->clearProcessCache that
was both in setUp() and in doLightweightServiceReset().
- Simplify SiteStatsTest by removing the hardcoded delete() calls.
An alternative fix for the flaky unit test would've been to add
a delete() call to categoryMembershipChange, but rather than hardcoding
all possible jobs that TestCase or another test could make, it's easier
to just reset/delete them all between tests.
- Simplify SiteStatsTest by using the $cache reference directly instead
of roundtripping through MediaWikiServices. If for some reason
setService() didn't work, the test will fail either way because it must
match the one used by JobQueueGroup (TODO: Use injection!), and besides
the setService() method already has its own unit test.
Change-Id: Ia4b7871221c76c65eacf31915b515705a36940d5
jenkins-bot [Mon, 23 Apr 2018 23:13:56 +0000 (23:13 +0000)]
Merge "Improve docs for Enotif-related settings"
jenkins-bot [Mon, 23 Apr 2018 22:56:24 +0000 (22:56 +0000)]
Merge "rdbms: remove deprecated getLaggedSlaveMode() method alias"
Timo Tijhof [Fri, 20 Apr 2018 23:14:11 +0000 (00:14 +0100)]
Improve docs for Enotif-related settings
Also fix documentation that was claiming wgEmergencyContact as
the default enotif sender, which is wrong. EmailNotification uses
$wgPasswordSender instead.
Change-Id: I5b060acac7bdfdbca9ac31e3473286225d1caa6f
Brad Jorsch [Mon, 23 Apr 2018 20:57:28 +0000 (16:57 -0400)]
import: Don't try duplicate detection when the sha1 is unavailable
Trying to compare a string field with 0 (cast from false) raises an
error in PostgreSQL, and we're expecting it to not detect duplicates in
that situation anyway.
Change-Id: Ibff6daee6bbec00e37532e03c9ece041ba612de0
jenkins-bot [Mon, 23 Apr 2018 20:15:26 +0000 (20:15 +0000)]
Merge "Drop archive.ar_text and ar_flags"
Translation updater bot [Mon, 23 Apr 2018 20:13:00 +0000 (22:13 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Iac53ea2bc5fb098aa3dddae111e7a52532cad4f3
jenkins-bot [Mon, 23 Apr 2018 20:06:04 +0000 (20:06 +0000)]
Merge "Make populateRevisionLength fix rows with ar_len = 0."
jenkins-bot [Mon, 23 Apr 2018 20:01:13 +0000 (20:01 +0000)]
Merge "rdbms: make select() warn when FOR UPDATE is used with aggregation"
jenkins-bot [Mon, 23 Apr 2018 20:00:14 +0000 (20:00 +0000)]
Merge "Avoid locking aggregated SELECT in Category::refresh"
Aaron Schulz [Mon, 23 Apr 2018 06:05:41 +0000 (23:05 -0700)]
rdbms: remove deprecated getLaggedSlaveMode() method alias
Change-Id: Iecdd39270d27ee1a2f9e1d714ec02c710fa241ef
jenkins-bot [Mon, 23 Apr 2018 19:10:04 +0000 (19:10 +0000)]
Merge "Use CONN_TRX_AUTO in WikiPage speculative revision ID callback"
daniel [Mon, 23 Apr 2018 09:07:24 +0000 (11:07 +0200)]
Make populateRevisionLength fix rows with ar_len = 0.
Due to T192189, some rows in the archive table may have ar_len set to 0
erronously. This can be detected by checking if they have ar_sha1 set to
"phoiac9h4m842xq45sp7s6u21eteeq1", which is the hash of the empty string.
This patch makes populateRevisionLength.php detect and fix such rows.
Bug: T192189
Change-Id: I9b6cd62f4b8c5bf93cd305b56af4352a527e19c9
Timo Tijhof [Fri, 20 Apr 2018 00:47:08 +0000 (01:47 +0100)]
resourceloader: Remove mwPerformance stub and rename mwLoadStart mark
Remove the private 'mwPerformance' stub, in favour of simply calling
performance.mark() directly in a conditional, like we do elsewhere for
web APIs that don't exist in all supported browsers.
This mark (part of the W3C User Timing interface), was sometimes used
to measure a delta to mwLoadEnd, whcih is a problem because startup
loads asynchronously. The point it executes is intentionally variable.
What matters is when the overall JS load process ends, which is composed
of multiple requests.
Keep the mark, but rename to 'mwStartup' which better describes its
purpose and can remain useful.
Bug: T160315
Bug: T192623
Change-Id: I6e2049e7252e5c2be3c5bc6617703b62e5edafb4
Timo Tijhof [Mon, 23 Apr 2018 17:35:02 +0000 (18:35 +0100)]
RELEASE-NOTES: Fix typo in CSSMin release note
Follows-up
c058bc4af3.
Bug: T189375
Change-Id: I21200dba6649d775d519249ae09cc21660dc864b
Aaron Schulz [Sat, 24 Mar 2018 13:49:14 +0000 (06:49 -0700)]
Use CONN_TRX_AUTO in WikiPage speculative revision ID callback
This increases the odds of seeing newer data and not guessing a
wrong revision ID due to getting raced out between stash and save.
Change-Id: Icf0f9b9c4d559f4ddf05a4ca8679e3c4dca5620a
jenkins-bot [Mon, 23 Apr 2018 17:20:05 +0000 (17:20 +0000)]
Merge "wikibits: Remove redundant stubs for document.write"
jenkins-bot [Mon, 23 Apr 2018 16:53:11 +0000 (16:53 +0000)]
Merge "selenium: Abstract test command behind 'npm run'"
jenkins-bot [Mon, 23 Apr 2018 16:53:00 +0000 (16:53 +0000)]
Merge "build: Switch QUnit package from deprecated 'qunitjs' to 'qunit'"