lhc/web/wiklou.git
4 years agoResourceLoaderClientHtml: Simplify code
Fomafix [Mon, 5 Aug 2019 18:59:08 +0000 (20:59 +0200)]
ResourceLoaderClientHtml: Simplify code

* Use nowdoc instead of heredoc syntax where variable expansion is not
  wanted.
* Combine code paths for debug mode and normal mode.

Change-Id: Ic70d82aaec6396a31783e5a60419409f08c4ef73

4 years agoMerge "rcfilters mobile cleanup"
jenkins-bot [Mon, 5 Aug 2019 18:38:39 +0000 (18:38 +0000)]
Merge "rcfilters mobile cleanup"

4 years agoMerge "Code style cleanups to FileBackendGroup"
jenkins-bot [Mon, 5 Aug 2019 18:27:24 +0000 (18:27 +0000)]
Merge "Code style cleanups to FileBackendGroup"

4 years agoMerge "Make LinksUpdate no longer extend EnqueueableDataUpdate"
jenkins-bot [Mon, 5 Aug 2019 17:36:51 +0000 (17:36 +0000)]
Merge "Make LinksUpdate no longer extend EnqueueableDataUpdate"

4 years agoMake LinksUpdate no longer extend EnqueueableDataUpdate
Aaron Schulz [Fri, 12 Jul 2019 04:32:54 +0000 (21:32 -0700)]
Make LinksUpdate no longer extend EnqueueableDataUpdate

LinksUpdate does not match RefreshLinksJob since the former is only a subset
of the later. Also, DeferredUpdates::doUpdates() only runs in "enqueue" mode
for cases in MediaWiki::restInPeace() if there is no post-send support.

In a future commit, the deferred callback in which LinksUpdate runs
currently, will be abstracted into its own deferred update, which
will then bring back EnqueueableDataUpdate for this update.

Bug: T206283
Change-Id: I0680be445e8b8e8d0dba85df135b84640f4fcb81

4 years agoMerge "OutputPage: Remove 'html5shiv' module from RL registration"
jenkins-bot [Mon, 5 Aug 2019 15:29:16 +0000 (15:29 +0000)]
Merge "OutputPage: Remove 'html5shiv' module from RL registration"

4 years agoMerge "Remove old comment and unused setting"
jenkins-bot [Mon, 5 Aug 2019 15:19:01 +0000 (15:19 +0000)]
Merge "Remove old comment and unused setting"

4 years agoMerge "Avoid error in querypage API when there's no value field"
jenkins-bot [Mon, 5 Aug 2019 14:55:11 +0000 (14:55 +0000)]
Merge "Avoid error in querypage API when there's no value field"

4 years agoMerge "rdbms: update ILBFactory comments and simplify LoadBalancer "load" code a...
jenkins-bot [Mon, 5 Aug 2019 14:55:05 +0000 (14:55 +0000)]
Merge "rdbms: update ILBFactory comments and simplify LoadBalancer "load" code a bit"

4 years agoMerge "rdbms: In the query log, show the server name in the message"
jenkins-bot [Mon, 5 Aug 2019 14:43:08 +0000 (14:43 +0000)]
Merge "rdbms: In the query log, show the server name in the message"

4 years agoRemove old comment and unused setting
Adam Wight [Mon, 5 Aug 2019 14:29:51 +0000 (16:29 +0200)]
Remove old comment and unused setting

Change-Id: I813c90197ba0fc76d493a47f83107ba4bb8dff2a

4 years agoMerge "selenium: stop running extensions/skins specs"
jenkins-bot [Mon, 5 Aug 2019 14:23:09 +0000 (14:23 +0000)]
Merge "selenium: stop running extensions/skins specs"

4 years agordbms: update ILBFactory comments and simplify LoadBalancer "load" code a bit
Aaron Schulz [Tue, 23 Jul 2019 00:05:40 +0000 (17:05 -0700)]
rdbms: update ILBFactory comments and simplify LoadBalancer "load" code a bit

Change-Id: I391a2f873c623b3086703a9b078def40363d9520

4 years agorcfilters mobile cleanup
Jan Drewniak [Thu, 1 Aug 2019 15:31:35 +0000 (17:31 +0200)]
rcfilters mobile cleanup

- ensure the advanced filters are hidden when clicking the "hide/show" button
- prevent horizontal scrolling of the "saved filters" and
  "other review tools" buttons on small screens.

Bug: T229360
Change-Id: I445df9124a6bb520dcf49b245f0a8392bf723c08

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 5 Aug 2019 06:20:20 +0000 (08:20 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8dfd153ca5be10f42e616ed11039f8e3fc8b7e46

4 years agoMerge "changes: Avoid use of deprecated method Revision::userCanBitfield()"
jenkins-bot [Sat, 3 Aug 2019 23:07:46 +0000 (23:07 +0000)]
Merge "changes: Avoid use of deprecated method Revision::userCanBitfield()"

4 years agochanges: Avoid use of deprecated method Revision::userCanBitfield()
Derick Alangi [Thu, 25 Jul 2019 12:47:57 +0000 (13:47 +0100)]
changes: Avoid use of deprecated method Revision::userCanBitfield()

Revision::userCanBitfield() is deprecated and RevisionRecord should
be used instead.

Change-Id: I0d6ad6863be520d3264809be69532dfb2e3dab9a

4 years agoOutputPage: Remove 'html5shiv' module from RL registration
Timo Tijhof [Sat, 3 Aug 2019 21:45:48 +0000 (22:45 +0100)]
OutputPage: Remove 'html5shiv' module from RL registration

Follows-up 66a011797d8e2fd, which changed the reference to this
JS file to be without the indirection of ResourceLoader.
It's been deployed well over the needed 7 days, so this can be
removed now.

Change-Id: I823c0b31c4478e5e34f4191d851b6a9c83a6019b

4 years agoMerge "resourceloader: Remove unused 'getBaseModulesInternal' internal method"
jenkins-bot [Sat, 3 Aug 2019 02:28:10 +0000 (02:28 +0000)]
Merge "resourceloader: Remove unused 'getBaseModulesInternal' internal method"

4 years agoMerge "Use `text` element for current content model on Special:ChangeContentModel"
jenkins-bot [Fri, 2 Aug 2019 23:10:50 +0000 (23:10 +0000)]
Merge "Use `text` element for current content model on Special:ChangeContentModel"

4 years agoMerge "Convert maintenance scripts to LoadBalancer::getMaintenanceConnectionRef()"
jenkins-bot [Fri, 2 Aug 2019 22:52:23 +0000 (22:52 +0000)]
Merge "Convert maintenance scripts to LoadBalancer::getMaintenanceConnectionRef()"

4 years agoConvert maintenance scripts to LoadBalancer::getMaintenanceConnectionRef()
Aaron Schulz [Sun, 21 Jul 2019 08:08:11 +0000 (01:08 -0700)]
Convert maintenance scripts to LoadBalancer::getMaintenanceConnectionRef()

Change-Id: I8944a052f51a1941ad3b76a40fc9c46d1363c426

4 years agoUse `text` element for current content model on Special:ChangeContentModel
DannyS712 [Fri, 2 Aug 2019 22:16:54 +0000 (22:16 +0000)]
Use `text` element for current content model on Special:ChangeContentModel

Change-Id: I6881154fa5baf4d55634c691c45596f49e2cd4b0

4 years agoMove WANObjectCache to wancache/ instead of WinCache
Aaron Schulz [Fri, 2 Aug 2019 22:01:53 +0000 (18:01 -0400)]
Move WANObjectCache to wancache/ instead of WinCache

Follow up 6ca3de5fa0.

Change-Id: I7021dfe5c900f810ab3b6dc701a04e2c3e1c4c66

4 years agoMerge "Show current content model on Special:ChangeContentModel"
jenkins-bot [Fri, 2 Aug 2019 20:38:49 +0000 (20:38 +0000)]
Merge "Show current content model on Special:ChangeContentModel"

4 years agoShow current content model on Special:ChangeContentModel
DannyS712 [Fri, 19 Jul 2019 13:23:09 +0000 (13:23 +0000)]
Show current content model on Special:ChangeContentModel

Bug: T226914
Change-Id: I60c7075751cb180cb86cde0b9caea1a4bcf9b2a3

4 years agoMerge "Move WAN cache classes under a new wancache/ directory"
jenkins-bot [Fri, 2 Aug 2019 20:06:10 +0000 (20:06 +0000)]
Merge "Move WAN cache classes under a new wancache/ directory"

4 years agoresourceloader: Remove unused 'getBaseModulesInternal' internal method
Timo Tijhof [Fri, 2 Aug 2019 19:33:08 +0000 (20:33 +0100)]
resourceloader: Remove unused 'getBaseModulesInternal' internal method

I added this as wrapper for the private 'getBaseModules' method
in commit dec800968eb6 for "use by SpecialJavaScriptTest", but
I never did. And it doesn't need it so.. let's remove that.

Change-Id: Ia301bd1c1f3a15098b9e6cd2934dd8e80879dd50

4 years agoReorganize ResourceLoader fields
Aaron Schulz [Thu, 1 Aug 2019 19:53:31 +0000 (15:53 -0400)]
Reorganize ResourceLoader fields

Change-Id: I9c9aece69b869165b8d9037336c8a2e7d7189c1e

4 years agoresourceloader: reorganize ResourceLoaderModule fields
Aaron Schulz [Thu, 1 Aug 2019 19:49:38 +0000 (15:49 -0400)]
resourceloader: reorganize ResourceLoaderModule fields

Also use AtEase for error suppression to avoid phpstorm warnings

Change-Id: Iaa8ca107f4e7c923e894416b40b4fadd2b3d162e

4 years agoMove WAN cache classes under a new wancache/ directory
Aaron Schulz [Fri, 2 Aug 2019 03:06:27 +0000 (23:06 -0400)]
Move WAN cache classes under a new wancache/ directory

Change-Id: I6837761ebca7557e029e1f65beca738266e48efb

4 years agoAvoid error in querypage API when there's no value field
Gergő Tisza [Fri, 2 Aug 2019 13:41:36 +0000 (15:41 +0200)]
Avoid error in querypage API when there's no value field

QueryPage does not require a value field, and post I8b67268e omitting
it might even be useful, so the API should not error out when it's
not present.

Change-Id: I83b49d4451ba71bb2161459bddf17b9ac00088d2

4 years agoMerge "Make Special:MovePage note about redirects dependent on content model"
jenkins-bot [Fri, 2 Aug 2019 08:45:12 +0000 (08:45 +0000)]
Merge "Make Special:MovePage note about redirects dependent on content model"

4 years agoMerge "Deprecate SearchEngine:getTextFromContent() and SearchEngine::textAlreadyUpdat...
jenkins-bot [Fri, 2 Aug 2019 06:40:17 +0000 (06:40 +0000)]
Merge "Deprecate SearchEngine:getTextFromContent() and SearchEngine::textAlreadyUpdatedForIndex()"

4 years agoMerge "Simplify SearchUpdate constructor and hard deprecate some param types"
jenkins-bot [Thu, 1 Aug 2019 22:14:13 +0000 (22:14 +0000)]
Merge "Simplify SearchUpdate constructor and hard deprecate some param types"

4 years agoMerge "resourceloader: Merge $fileCache conditional blocks"
jenkins-bot [Thu, 1 Aug 2019 21:52:48 +0000 (21:52 +0000)]
Merge "resourceloader: Merge $fileCache conditional blocks"

4 years agoMerge "Document SearchDatabase::doSearchTextInDB to return null"
jenkins-bot [Thu, 1 Aug 2019 21:51:36 +0000 (21:51 +0000)]
Merge "Document SearchDatabase::doSearchTextInDB to return null"

4 years agoMerge "Deprecate SearchEngine::userHighlightPrefs()"
jenkins-bot [Thu, 1 Aug 2019 21:36:37 +0000 (21:36 +0000)]
Merge "Deprecate SearchEngine::userHighlightPrefs()"

4 years agoMerge "Fix bogus field use in RevisionRenderer::getSpeculativePageId"
jenkins-bot [Thu, 1 Aug 2019 20:59:05 +0000 (20:59 +0000)]
Merge "Fix bogus field use in RevisionRenderer::getSpeculativePageId"

4 years agoCode style cleanups to FileBackendGroup
Aaron Schulz [Thu, 1 Aug 2019 18:54:30 +0000 (14:54 -0400)]
Code style cleanups to FileBackendGroup

Set domainId in register() instead of on every config() call.
Use array_merge() to make the override precedence clearer.

Change-Id: I8792281cd9f1a4018255f9a9b87126c909095e68

4 years agoFix bogus field use in RevisionRenderer::getSpeculativePageId
Aaron Schulz [Thu, 1 Aug 2019 19:57:22 +0000 (15:57 -0400)]
Fix bogus field use in RevisionRenderer::getSpeculativePageId

This field was renamed, causing a functional merge conflict

Follow-up 5099ee9f7273

Bug: T229589
Change-Id: I7a6bb68ff1fe320313276dc5a67c70de6715ccb6

4 years agoClean up $wgFileBackends/$wgLockManagers comments
Aaron Schulz [Thu, 1 Aug 2019 18:25:27 +0000 (14:25 -0400)]
Clean up $wgFileBackends/$wgLockManagers comments

Change-Id: Ib9692176f0e100f3b0c39544109ef2d8a8c8cd92

4 years agoMerge "Add missing title info in RenderedRevision::outputVariesOnRevisionMetaData()"
jenkins-bot [Thu, 1 Aug 2019 17:40:05 +0000 (17:40 +0000)]
Merge "Add missing title info in RenderedRevision::outputVariesOnRevisionMetaData()"

4 years agoMerge "Cleanup UserGroupMembership::insert() and make it more atomic"
jenkins-bot [Thu, 1 Aug 2019 17:39:12 +0000 (17:39 +0000)]
Merge "Cleanup UserGroupMembership::insert() and make it more atomic"

4 years agoCleanup UserGroupMembership::insert() and make it more atomic
Aaron Schulz [Wed, 31 Jul 2019 02:02:55 +0000 (22:02 -0400)]
Cleanup UserGroupMembership::insert() and make it more atomic

Bug: T229456
Change-Id: Ibf7900dd9273d3befb5c7f0c4ed46b65bd3b0ae4

4 years agoMerge "API: Create a module bundle for 'apipretty' and 'apihelp'"
jenkins-bot [Thu, 1 Aug 2019 17:01:27 +0000 (17:01 +0000)]
Merge "API: Create a module bundle for 'apipretty' and 'apihelp'"

4 years agoMerge "filebackend: avoid use of IDatabase::clearFlags() in DBLockManager"
jenkins-bot [Thu, 1 Aug 2019 16:58:26 +0000 (16:58 +0000)]
Merge "filebackend: avoid use of IDatabase::clearFlags() in DBLockManager"

4 years agoMerge "resourceloader: Remove getters for private constants in mw.loader.store"
jenkins-bot [Thu, 1 Aug 2019 16:58:17 +0000 (16:58 +0000)]
Merge "resourceloader: Remove getters for private constants in mw.loader.store"

4 years agoMerge "Suppress notice from ParserOutput::__sleep()"
jenkins-bot [Thu, 1 Aug 2019 16:31:57 +0000 (16:31 +0000)]
Merge "Suppress notice from ParserOutput::__sleep()"

4 years agoMerge "resourceloader: Remove slow structure test for checking getVersionHash"
jenkins-bot [Thu, 1 Aug 2019 16:28:09 +0000 (16:28 +0000)]
Merge "resourceloader: Remove slow structure test for checking getVersionHash"

4 years agoDeprecate SearchEngine:getTextFromContent() and SearchEngine::textAlreadyUpdatedForIn...
David Causse [Thu, 1 Aug 2019 14:58:33 +0000 (16:58 +0200)]
Deprecate SearchEngine:getTextFromContent() and SearchEngine::textAlreadyUpdatedForIndex()

It was just a wrapper to Content::getTextForSearchIndex(), simply use
this method rather than depending on (and sometimes constructing) a
SearchEngine.

Change-Id: I8541248ffdca303f0af3b959cf2f051dcb497925

4 years agoresourceloader: Remove slow structure test for checking getVersionHash
Timo Tijhof [Thu, 1 Aug 2019 00:19:45 +0000 (01:19 +0100)]
resourceloader: Remove slow structure test for checking getVersionHash

This isn't needed because the startup module validates this already.

The vast majority of modules are FileModule instances which can't be invalid,
because a separate test asserts that class already. This test existed for
validating the format of version hashes returned by a theoretical Module
sub class in an extension that (badly) overrides the getVersionHash method.

As of writing, no extension overrides that method. And more importantly,
the startup module already validates this at run-time, and logs a warning.
This commit turns that into an exception, which would get logged in a way
that Jenkins will fail the build if encountered.

This structure test, which computed the response for all registered modules,
previously took 3-5 seconds in CI.

Bug: T225730
Change-Id: Id2e37434b0ccd95dd2279f04e2230e9c06b09ccb

4 years agoSimplify SearchUpdate constructor and hard deprecate some param types
David Causse [Thu, 1 Aug 2019 10:13:45 +0000 (12:13 +0200)]
Simplify SearchUpdate constructor and hard deprecate some param types

Change-Id: I5677041169402014f1afc1a9012460c760ca24b6

4 years agoDeprecate SearchEngine::userHighlightPrefs()
David Causse [Thu, 1 Aug 2019 09:46:24 +0000 (11:46 +0200)]
Deprecate SearchEngine::userHighlightPrefs()

was only returning two constants and forced a cyclic dep bewteen
SearchEngine and its SearchResult instance.
Simple make these values a constant in SearchHighlighter and use
them as default values for the highlight methods.

Change-Id: Ia78408d5266d0a305006027fe6265a2a1d68b0b9

4 years agoMerge "resourceloader: Avoid escaping of UTF-8 characters in messages"
jenkins-bot [Thu, 1 Aug 2019 11:42:11 +0000 (11:42 +0000)]
Merge "resourceloader: Avoid escaping of UTF-8 characters in messages"

4 years agoAdd missing title info in RenderedRevision::outputVariesOnRevisionMetaData()
Aaron Schulz [Thu, 1 Aug 2019 08:11:49 +0000 (04:11 -0400)]
Add missing title info in RenderedRevision::outputVariesOnRevisionMetaData()

Follows 3a044ca51ce9b.

Bug: T226785
Change-Id: I03cf35ee2773cfeb887edec8bc447c834bab5a2a

4 years agoresourceloader: Avoid escaping of UTF-8 characters in messages
Fomafix [Tue, 30 Jul 2019 04:52:59 +0000 (06:52 +0200)]
resourceloader: Avoid escaping of UTF-8 characters in messages

It's not needed to escape UTF-8 characters in messages.

The characters '&', '<' and '>' are still escaped. For the output in
load.php this escaping is not necessary but messages can also embedded
into <script> tags and here are the characters '<' and '>' problematic.

Bug: T229301
Change-Id: If424a21df4a813ba6cb79b939f0857d96f162a17

4 years agomediawiki.Upload.BookletLayout: Add missing message
Bartosz Dziewoński [Thu, 1 Aug 2019 02:32:02 +0000 (04:32 +0200)]
mediawiki.Upload.BookletLayout: Add missing message

Bug: T203058
Change-Id: If1274da9b9dca5595201c298ffd35576ef7b7e52

4 years agoresourceloader: Remove getters for private constants in mw.loader.store
Timo Tijhof [Thu, 1 Aug 2019 00:40:19 +0000 (01:40 +0100)]
resourceloader: Remove getters for private constants in mw.loader.store

Turn the private getter methods into private properties.
Shorter, simpler, faster.

Change-Id: I8c7a7c566983ba6ac78cd2feb5d0ec6debb3773c

4 years agoSuppress notice from ParserOutput::__sleep()
Tim Starling [Thu, 1 Aug 2019 00:08:38 +0000 (10:08 +1000)]
Suppress notice from ParserOutput::__sleep()

Bug: T229366
Change-Id: I8f0a537f0b6b76aac0c52e691ec4653c51c49940

4 years agoMerge "Make CliInstaller control the processing logic of the error"
jenkins-bot [Thu, 1 Aug 2019 00:01:08 +0000 (00:01 +0000)]
Merge "Make CliInstaller control the processing logic of the error"

4 years agoMerge "context: Use getRawVal instead of getVal for 'uselang' and 'useskin'"
jenkins-bot [Wed, 31 Jul 2019 23:07:22 +0000 (23:07 +0000)]
Merge "context: Use getRawVal instead of getVal for 'uselang' and 'useskin'"

4 years agoMerge "Localisation updates from https://translatewiki.net."
jenkins-bot [Wed, 31 Jul 2019 20:42:59 +0000 (20:42 +0000)]
Merge "Localisation updates from https://translatewiki.net."

4 years agoMerge "Fix documentation of languageinfo name prop"
jenkins-bot [Wed, 31 Jul 2019 20:11:03 +0000 (20:11 +0000)]
Merge "Fix documentation of languageinfo name prop"

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 31 Jul 2019 20:07:56 +0000 (22:07 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie2a14a24bf788729b75ce23b7fec1b0bf5d9c02e

4 years agoMerge "resourceloader: Remove deprecated ResourceLoaderContext::expandModuleNames"
jenkins-bot [Wed, 31 Jul 2019 17:34:55 +0000 (17:34 +0000)]
Merge "resourceloader: Remove deprecated ResourceLoaderContext::expandModuleNames"

4 years agoMerge "resourceloader: Only register 'jquery.qunit' in test context"
jenkins-bot [Wed, 31 Jul 2019 16:58:32 +0000 (16:58 +0000)]
Merge "resourceloader: Only register 'jquery.qunit' in test context"

4 years agoMerge "resourceloader: Don't explicitly enqueue test libs on SpecialJavaScriptTest"
jenkins-bot [Wed, 31 Jul 2019 16:58:26 +0000 (16:58 +0000)]
Merge "resourceloader: Don't explicitly enqueue test libs on SpecialJavaScriptTest"

4 years agoMerge "resourceloader: Hard-deprecate ResourceLoaderContext::getConfig"
jenkins-bot [Wed, 31 Jul 2019 16:52:13 +0000 (16:52 +0000)]
Merge "resourceloader: Hard-deprecate ResourceLoaderContext::getConfig"

4 years agoDocument SearchDatabase::doSearchTextInDB to return null
Umherirrender [Fri, 5 Jul 2019 20:14:51 +0000 (22:14 +0200)]
Document SearchDatabase::doSearchTextInDB to return null

The function calling this abstract function allows to return null,
so it should be okay to return null here

The null for empty result in SearchOracle

Change-Id: I66a8fb3a4190bf5506f358a47f6f4833b1715c7f

4 years agoMerge "preferences: Fix skinname msg check in generateSkinOptions"
jenkins-bot [Wed, 31 Jul 2019 15:06:33 +0000 (15:06 +0000)]
Merge "preferences: Fix skinname msg check in generateSkinOptions"

4 years agoMerge "Add QueryPage::delete method"
jenkins-bot [Wed, 31 Jul 2019 14:15:14 +0000 (14:15 +0000)]
Merge "Add QueryPage::delete method"

4 years agoresourceloader: Hard-deprecate ResourceLoaderContext::getConfig
Timo Tijhof [Tue, 30 Jul 2019 14:25:23 +0000 (15:25 +0100)]
resourceloader: Hard-deprecate ResourceLoaderContext::getConfig

Already in 1.34 release notes from when it was soft-deprecated, earlier
this release cycle.

Depends-On: I949b91daabb0cf16519ef02e718ad97c827c4eec
Depends-On: Icf1ead8829268505709c71f46dede5cdfc4471a8
Change-Id: I471088b322848a779d0dd58651dc1bd0d49067f1

4 years agoMerge "Allow SelectWithInput to be marked as required and handle that dynamically"
jenkins-bot [Wed, 31 Jul 2019 13:28:54 +0000 (13:28 +0000)]
Merge "Allow SelectWithInput to be marked as required and handle that dynamically"

4 years agoMerge "Fix SpecialBlock validation for ipb_allow_usertalk"
jenkins-bot [Wed, 31 Jul 2019 12:36:45 +0000 (12:36 +0000)]
Merge "Fix SpecialBlock validation for ipb_allow_usertalk"

4 years agoRevert rename of mSpeculativeRevId to speculativeRevIdUsed
Tim Starling [Wed, 31 Jul 2019 02:16:07 +0000 (12:16 +1000)]
Revert rename of mSpeculativeRevId to speculativeRevIdUsed

And add a test which is confirmed to fail on HHVM prior to this change
with the error message "serialize(): "" returned as member variable from
__sleep() but does not exist".

Bug: T229366
Change-Id: I236bb4d64bc2e9f7756885e8c418399804eac5e1

4 years agopreferences: Fix skinname msg check in generateSkinOptions
jdlrobson [Tue, 30 Jul 2019 21:18:05 +0000 (14:18 -0700)]
preferences: Fix skinname msg check in generateSkinOptions

Fixes a bug introduced in b2b204eeafc.

$useSkin is not the appropriate variable to check here - we want
to check the skin set in preferences.

Bug: T223824
Change-Id: I666e30dd9ff396fd39c47b362d66670dfaa92ca9

4 years agoMerge "context: Make the getSkin() fallback logic more explicit"
jenkins-bot [Tue, 30 Jul 2019 21:44:56 +0000 (21:44 +0000)]
Merge "context: Make the getSkin() fallback logic more explicit"

4 years agoMerge "Fix recent changes and watchlist separator whitespace"
jenkins-bot [Tue, 30 Jul 2019 21:44:49 +0000 (21:44 +0000)]
Merge "Fix recent changes and watchlist separator whitespace"

4 years agoAllow SelectWithInput to be marked as required and handle that dynamically
David Barratt [Mon, 22 Jul 2019 22:53:14 +0000 (18:53 -0400)]
Allow SelectWithInput to be marked as required and handle that dynamically

Alters the SelectWithInput to allow a required config to be passed from a
parent widget. Also handles the required state dynamically. If the widget is
an OR widget, then only the select dropdown is required. The text input will
be required when the other option is selected. If the widget is an AND widget
then both the select dropdown and the text input will be required.

Bug: T220533
Change-Id: I8479743126756f2b1bd7bcd53b100a0134f34d07

4 years agoMerge "Fix return type hints in media related classes"
jenkins-bot [Tue, 30 Jul 2019 20:26:36 +0000 (20:26 +0000)]
Merge "Fix return type hints in media related classes"

4 years agoFix SpecialBlock validation for ipb_allow_usertalk
Dayllan Maza [Tue, 30 Jul 2019 02:15:56 +0000 (22:15 -0400)]
Fix SpecialBlock validation for ipb_allow_usertalk

ipb_allow_usertalk should be saved as false only when:
    A block is sitewide
    A block is partial and there is a restriction on the User_talk namespace

Bug: T224468
Change-Id: Ic85368991b5905af1bab99b0cb5fcba0e993405e

4 years agoFix recent changes and watchlist separator whitespace
edderso [Tue, 30 Jul 2019 17:46:47 +0000 (18:46 +0100)]
Fix recent changes and watchlist separator whitespace

Added spaces around 'mw-changeslist-separator' spans in EnhancedChangesListGroup.mustache

Bug: T222903
Change-Id: Ie7e09a39a8f51943fa6c2c244d80435150296a5c

4 years agoresourceloader: Only register 'jquery.qunit' in test context
Timo Tijhof [Tue, 30 Jul 2019 00:05:42 +0000 (01:05 +0100)]
resourceloader: Only register 'jquery.qunit' in test context

Change-Id: I0ea4bb73d5b886ea903a19a12bdd464778af0002

4 years agoresourceloader: Don't explicitly enqueue test libs on SpecialJavaScriptTest
Timo Tijhof [Tue, 30 Jul 2019 15:06:35 +0000 (16:06 +0100)]
resourceloader: Don't explicitly enqueue test libs on SpecialJavaScriptTest

The test-only modules registered by QUnitTestResources.php are currently
were previously caught by the array_keys() catch-all in registerTestModules()
which meant that modules like 'test.sinonjs' would be requested on
SpecialJavaScriptTest despite not doing anything by itself, nor executing
at the "right" time per se through this means.

In order for it to execute at the right time, the testrunner has to depend
on it (which it does, already). But, that also means it doesn't need to
be requested separately. Doing so could be confusing.

This is neccecary in order to move 'jquery.qunit' from Resources.php
to QUnitTestResources.php as otherwise, listing in QUnitTestResources.php,
would implicitly mean SpecialJavaScriptTest.php thinks it's a test suite
and load it. That is a problem, because when we run the tests headless from
the command-line with Karma, the environment already has a QUnit interface
defined, and should not be loaded a second time by MW.

Change-Id: I08b31cd1dee516cf0d26bafdb8cc7c1223633bad

4 years agofilebackend: avoid use of IDatabase::clearFlags() in DBLockManager
Aaron Schulz [Tue, 30 Jul 2019 15:37:34 +0000 (11:37 -0400)]
filebackend: avoid use of IDatabase::clearFlags() in DBLockManager

Change-Id: I143533790363d8bb9b9038cf320b251131602d4a

4 years agoMerge "Adapt Recent Changes advanced filters for mobile usage"
jenkins-bot [Tue, 30 Jul 2019 15:23:06 +0000 (15:23 +0000)]
Merge "Adapt Recent Changes advanced filters for mobile usage"

4 years agoresourceloader: Remove deprecated ResourceLoaderContext::expandModuleNames
Timo Tijhof [Tue, 30 Jul 2019 14:28:21 +0000 (15:28 +0100)]
resourceloader: Remove deprecated ResourceLoaderContext::expandModuleNames

Change-Id: If9aa389cc64cb41e60c865d586d644d9f3bca9b5

4 years agoMerge "Fix punctuation in HTMLForm documentation"
jenkins-bot [Tue, 30 Jul 2019 14:15:57 +0000 (14:15 +0000)]
Merge "Fix punctuation in HTMLForm documentation"

4 years agoFix punctuation in HTMLForm documentation
Thalia [Tue, 30 Jul 2019 13:43:39 +0000 (14:43 +0100)]
Fix punctuation in HTMLForm documentation

Change-Id: I22c4ed248fddc93afd486b9bee5a80bdbba1c685

4 years agopager: Add visibility methods declared in the Pager interface
Derick Alangi [Sat, 27 Jul 2019 18:29:24 +0000 (19:29 +0100)]
pager: Add visibility methods declared in the Pager interface

In addition, also add visibility to the class(es) that implement
the method.

Change-Id: If650cfcafbe4fe8cd4d2e0629df3f170c599ea41

4 years agoAdapt Recent Changes advanced filters for mobile usage
Jan Drewniak [Fri, 14 Jun 2019 10:04:01 +0000 (12:04 +0200)]
Adapt Recent Changes advanced filters for mobile usage

Changes the behaviour of the rcfilter search input by essentially
turning it into a button for mobile devices. Depending on the value
of `OO.ui.isMobile()` the input is set to readonly mode and given
a shorter message and different icon.

Setting the search input to readonly prevents onscreen keyboards from
being actived, but still opens the filter menu, so that mobile users
can still add/remove filters, just without the ability to search through
them.

Styles are also modified to make the search input appear as a button by
overriding the default readonly and placeholder styles.

Bug: T225499, T223230
Change-Id: Iaa67369542e658d3571d957a204daa7a53d1e520

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 30 Jul 2019 06:20:29 +0000 (08:20 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I1b7b2936762e14eb43e9d777c3c3d198b66e4e6d

4 years agoMerge "Add SearchResultSetTrait"
jenkins-bot [Tue, 30 Jul 2019 01:30:09 +0000 (01:30 +0000)]
Merge "Add SearchResultSetTrait"

4 years agoMerge "Add BaseSearchResultSet"
jenkins-bot [Tue, 30 Jul 2019 01:29:33 +0000 (01:29 +0000)]
Merge "Add BaseSearchResultSet"

4 years agoAPI: Create a module bundle for 'apipretty' and 'apihelp'
Timo Tijhof [Tue, 30 Jul 2019 00:17:35 +0000 (01:17 +0100)]
API: Create a module bundle for 'apipretty' and 'apihelp'

These are both fairly small modules used in related low-traffic
scenarios. The cost of registering both globally on all page views
as a top-level entry point does not seem worth the marginal gain
of loading only one of these two in the contexts where they are
needed.

Change-Id: I42458ebec3f8d6e14e52e44d62fb914fcbeda5db

4 years agocontext: Make the getSkin() fallback logic more explicit
Timo Tijhof [Mon, 29 Jul 2019 22:42:57 +0000 (23:42 +0100)]
context: Make the getSkin() fallback logic more explicit

Previously the first two post-hook checks where mutually exclusive
and the fallback was generic (not conditional) which means we
would also allow the first two conditions to succeed in a way that
leaves $this->skin as null.

Aside from that not being possible right now, it also duplicates a
null check in two places, which isn't ideal.

Codify that the first two blocks always result in $this->skin
being assigned non-null by using an 'else' branch instead of another
generic check.

Change-Id: I7986684bf1bb2daad3aaddfbcd2ca02e652f78c2

4 years agoMerge "Add explicit visibility to SearchResult methods"
jenkins-bot [Mon, 29 Jul 2019 23:25:36 +0000 (23:25 +0000)]
Merge "Add explicit visibility to SearchResult methods"

4 years agoMerge "Add explicit visibility to ISearchResultSet methods"
jenkins-bot [Mon, 29 Jul 2019 23:25:29 +0000 (23:25 +0000)]
Merge "Add explicit visibility to ISearchResultSet methods"

4 years agocontext: Use getRawVal instead of getVal for 'uselang' and 'useskin'
Timo Tijhof [Mon, 29 Jul 2019 22:57:43 +0000 (23:57 +0100)]
context: Use getRawVal instead of getVal for 'uselang' and 'useskin'

Bug: T189966
Change-Id: I9db7b3f36f5457e80aa9b673bcb56deb83e47a18