lhc/web/wiklou.git
5 years agoJobQueueGroup: Allow readOnlyReason to be specified per JQ type
Marko Obrovac [Thu, 19 Jul 2018 16:13:38 +0000 (18:13 +0200)]
JobQueueGroup: Allow readOnlyReason to be specified per JQ type

We use $wgReadOnly for various reasons, one of which is to disallow
writes in the currently-non-active DC. However, we should allow the
readOnlyReason configuration variable to be available per JobQueue type
and have it the code respect that.

In our current set-up, we use JobQueueEventBus which ever only uses the
enqueue execution path and does not depend upon which DC it is executed
in, so this will allow us to enqueue jobs in both DCs.

Note that this is an alternative approach to the one outlined in
Ibbad6063b6b154d7f7d172c79f7be324bf80eb7e

Bug: T199594
Change-Id: I8f1a57a81ea11c1c587c0057fa8bb3454b0e0b56

5 years agoMerge "Fix handling of already logged-in user in Special:Userlogin"
jenkins-bot [Thu, 19 Jul 2018 08:32:11 +0000 (08:32 +0000)]
Merge "Fix handling of already logged-in user in Special:Userlogin"

5 years agoDeprecate wfArrayFilter() and wfArrayFilterByKey()
Max Semenik [Wed, 18 Jul 2018 08:42:52 +0000 (01:42 -0700)]
Deprecate wfArrayFilter() and wfArrayFilterByKey()

Now that all our supported PHP versions have array_filter()
with a third parameter, these functions aren't needed anymore.

Depends-On: I3b097a1a048baabcaca15dc214a3a1bb06e746cc
Depends-On: I0187e27ac47cbab099249572201d1a649226a734
Change-Id: I7cabd0252691a083cb749cf9d3a7a23f1d076c39

5 years agoMerge "LogEventsList: Remove options not used by HTMLForm"
jenkins-bot [Thu, 19 Jul 2018 02:25:04 +0000 (02:25 +0000)]
Merge "LogEventsList: Remove options not used by HTMLForm"

5 years agoMerge "Make MultiWriteBagOStuff use the native merge() of each backend"
jenkins-bot [Thu, 19 Jul 2018 01:53:32 +0000 (01:53 +0000)]
Merge "Make MultiWriteBagOStuff use the native merge() of each backend"

5 years agoMerge "Convert MemcLockManager to using MapCacheLRU"
Krinkle [Thu, 19 Jul 2018 01:48:56 +0000 (01:48 +0000)]
Merge "Convert MemcLockManager to using MapCacheLRU"

5 years agoFix handling of already logged-in user in Special:Userlogin
Gergő Tisza [Wed, 18 Jul 2018 22:49:50 +0000 (00:49 +0200)]
Fix handling of already logged-in user in Special:Userlogin

Due to a forgotten return clause, the full request handling
is executed after calling successfulAction() when the user
reloads the login page while logged in. With a typical setup
case this is masked by the fact that successfulAction() does
a redirect (although it probably still impacts performance),
for less common configurations this might result in the login
form rendered below a success message, or in calling extension
hooks which should not be called.

Bug: T185702
Change-Id: If19220c4cf17b08f7e03ca0d06381067f26dda1a

5 years agoMake MultiWriteBagOStuff use the native merge() of each backend
Aaron Schulz [Tue, 10 Jul 2018 23:26:43 +0000 (00:26 +0100)]
Make MultiWriteBagOStuff use the native merge() of each backend

This lets backends that support CAS take advantage of it.

Also fix race condition with merge() in asyncWrites mode where two
threads might add to a list/set but the first request finishes after
the second, which would erase an item during the set().

Bug: T198239
Change-Id: Ibd2539429746f12b4de74d0f031089cb80aa8b4b

5 years agoMerge "LogEventsList: Add backwards-compatibility for log-show-hide messages"
jenkins-bot [Wed, 18 Jul 2018 21:03:59 +0000 (21:03 +0000)]
Merge "LogEventsList: Add backwards-compatibility for log-show-hide messages"

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 18 Jul 2018 19:54:28 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie2ceb98d5d3a492d4bd82a59e957ac36cbd01f05

5 years agoRemove unused $links in TablePager::getNavigationBar
addshore [Wed, 18 Jul 2018 14:00:36 +0000 (16:00 +0200)]
Remove unused $links in TablePager::getNavigationBar

Change-Id: I43ba3390c47e4955704cfd82b16627008f9e6bc8

5 years agoMerge "WikiPage: Return false from hasDifferencesOutsideMainSlot if no differences...
jenkins-bot [Wed, 18 Jul 2018 19:20:08 +0000 (19:20 +0000)]
Merge "WikiPage: Return false from hasDifferencesOutsideMainSlot if no differences at all"

5 years agoMerge "Add $maxAge parameter to MapCacheLRU get() and getField() methods"
jenkins-bot [Wed, 18 Jul 2018 18:25:56 +0000 (18:25 +0000)]
Merge "Add $maxAge parameter to MapCacheLRU get() and getField() methods"

5 years agoMerge "rdbms: give TransactionProfiler write time and row count for ROLLBACK"
jenkins-bot [Wed, 18 Jul 2018 18:21:24 +0000 (18:21 +0000)]
Merge "rdbms: give TransactionProfiler write time and row count for ROLLBACK"

5 years agoMerge "objectcache: switch WANObjectCache process cache to MapCacheLRU"
jenkins-bot [Wed, 18 Jul 2018 18:18:28 +0000 (18:18 +0000)]
Merge "objectcache: switch WANObjectCache process cache to MapCacheLRU"

5 years agoMerge "HTMLTitleTextField, HTMLUserTextField: Check for `null` before using the value"
jenkins-bot [Wed, 18 Jul 2018 18:10:14 +0000 (18:10 +0000)]
Merge "HTMLTitleTextField, HTMLUserTextField: Check for `null` before using the value"

5 years agoConvert MemcLockManager to using MapCacheLRU
Aaron Schulz [Wed, 18 Jul 2018 00:01:56 +0000 (01:01 +0100)]
Convert MemcLockManager to using MapCacheLRU

Change-Id: Ia376641f29c1d9acc51268afb9319ab0beab5528

5 years agoAdd $maxAge parameter to MapCacheLRU get() and getField() methods
Aaron Schulz [Wed, 11 Jul 2018 13:29:27 +0000 (14:29 +0100)]
Add $maxAge parameter to MapCacheLRU get() and getField() methods

Change-Id: I2dee1ad3a5b4f2ef8c182e3466812777a9a9cf7f

5 years agoMerge "LogEventsList: Use GET in HTMLForm"
jenkins-bot [Wed, 18 Jul 2018 18:07:02 +0000 (18:07 +0000)]
Merge "LogEventsList: Use GET in HTMLForm"

5 years agordbms: give TransactionProfiler write time and row count for ROLLBACK
Aaron Schulz [Mon, 2 Jul 2018 15:49:28 +0000 (16:49 +0100)]
rdbms: give TransactionProfiler write time and row count for ROLLBACK

This will hopefully provide more diagnostic info when DBTransactionSizeError
rollbacks are triggered.

Bug: T190260
Change-Id: Ib8bea5a9ec7d3ffeaf423adb930dc6fb14314449

5 years agoobjectcache: switch WANObjectCache process cache to MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 13:38:22 +0000 (14:38 +0100)]
objectcache: switch WANObjectCache process cache to MapCacheLRU

Change-Id: I60d8de99e9590bfef6009f133723bb10d5837c52

5 years agoLogEventsList: Remove options not used by HTMLForm
Bartosz Dziewoński [Wed, 18 Jul 2018 17:45:40 +0000 (19:45 +0200)]
LogEventsList: Remove options not used by HTMLForm

HTMLForm gets the input value from the request. The values
specified in the form descriptor were never used. (You can specify a
default value, but that uses the 'default' key anyway.)

Change-Id: I27934e1118492371e547dd5e94feb172a0510cc9

5 years agoMerge "Reduce the rate of calls to Category::refreshCounts"
jenkins-bot [Wed, 18 Jul 2018 17:38:04 +0000 (17:38 +0000)]
Merge "Reduce the rate of calls to Category::refreshCounts"

5 years agoWikiPage: Return false from hasDifferencesOutsideMainSlot if no differences at all
Brad Jorsch [Wed, 18 Jul 2018 15:14:56 +0000 (11:14 -0400)]
WikiPage: Return false from hasDifferencesOutsideMainSlot if no differences at all

If the page has no differences in any slot, the method is incorrectly
returning "true" to claim there are differences in some non-main slot.

Follows up Ifdf9bc9d884844f9ffeb8019d9b13d5737862063.

Bug: T194412
Change-Id: I013bcd9c39d05d9af47c1a29026b14d27af2db15

5 years agoProvide correct param to Special:Log
Matěj Suchánek [Wed, 18 Jul 2018 13:59:04 +0000 (15:59 +0200)]
Provide correct param to Special:Log

Follows up Iba3c6aa5ac40dcdee0792c2d045b238b02d76521.

Bug: T117737
Change-Id: I90bb55eba4c3b4846da2394798ad6a2ac6fc9eca

5 years agoMerge "AuthManager: Don't invalidate BotPasswords if a password reset email is sent"
jenkins-bot [Wed, 18 Jul 2018 10:33:14 +0000 (10:33 +0000)]
Merge "AuthManager: Don't invalidate BotPasswords if a password reset email is sent"

5 years agoMerge "registration: Validate no duplicate keys exist in extension.json"
jenkins-bot [Wed, 18 Jul 2018 09:47:07 +0000 (09:47 +0000)]
Merge "registration: Validate no duplicate keys exist in extension.json"

5 years agoregistration: Validate no duplicate keys exist in extension.json
Florian Schmidt [Sun, 22 Jan 2017 15:36:22 +0000 (16:36 +0100)]
registration: Validate no duplicate keys exist in extension.json

The JSON specification permits duplicate keys, but doing so is almost
always nearly a mistake.

We can use the JSON lint library (added as
dev-requirement to composer), which is now also used to decode the
JSON (as it's the same step as validating the JSON).

Bug: T153507
Change-Id: Ia713a1906169333c1aa2aebdc0ed060d26428d72

5 years agoMerge "registration: Use the correct key for skin dependencies"
jenkins-bot [Wed, 18 Jul 2018 09:26:50 +0000 (09:26 +0000)]
Merge "registration: Use the correct key for skin dependencies"

5 years agoMerge "RCFilters: Standardize loading indicator appearance"
jenkins-bot [Wed, 18 Jul 2018 09:02:28 +0000 (09:02 +0000)]
Merge "RCFilters: Standardize loading indicator appearance"

5 years agoMerge "maintenance/interwiki.*: Replace Wikimedia Foundation wiki URL"
jenkins-bot [Wed, 18 Jul 2018 07:26:41 +0000 (07:26 +0000)]
Merge "maintenance/interwiki.*: Replace Wikimedia Foundation wiki URL"

5 years agomaintenance/interwiki.*: Replace Wikimedia Foundation wiki URL
Reedy [Tue, 17 Jul 2018 15:31:11 +0000 (16:31 +0100)]
maintenance/interwiki.*: Replace Wikimedia Foundation wiki URL

The wiki is now being moved to foundation.wikimedia.org.

Bug: T199812
Change-Id: I7ff4e74f075b90e81bc61ec3b03fe0884b6043ef

5 years agoLogEventsList: Use GET in HTMLForm
Prateek Saxena [Wed, 18 Jul 2018 05:08:03 +0000 (10:38 +0530)]
LogEventsList: Use GET in HTMLForm

I missed this during conversion.

Follows-up on Iba3c6aa5ac40dcdee0792c2d045b238b02d76521.

Bug: T199856
Change-Id: If3f228425b217c9ccdb7d32e0bc899647797ed70

5 years agoLogEventsList: Add backwards-compatibility for log-show-hide messages
Prateek Saxena [Wed, 18 Jul 2018 04:19:36 +0000 (09:49 +0530)]
LogEventsList: Add backwards-compatibility for log-show-hide messages

Also updated the release notes.

Bug: T199657
Change-Id: I027effbc7bd797ee241281ddd57334a5dc5c8a57

5 years agoReduce the rate of calls to Category::refreshCounts
Aaron Schulz [Tue, 17 Jul 2018 20:22:59 +0000 (21:22 +0100)]
Reduce the rate of calls to Category::refreshCounts

Bug: T199762
Change-Id: I23e2e1ebf187d21ea4bd22304aa622199a8b9c5b

5 years agoSwitch callers from ProcessCacheLRU to MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 12:54:51 +0000 (13:54 +0100)]
Switch callers from ProcessCacheLRU to MapCacheLRU

Change-Id: Iefe5c25e952079420b3241bc26efe1d2d086e6fb

5 years agofilerepo: switch callers from ProcessCacheLRU to MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 12:53:23 +0000 (13:53 +0100)]
filerepo: switch callers from ProcessCacheLRU to MapCacheLRU

Change-Id: I58706b5610e0113a0c8d86eed2662870198f9b46

5 years agoHTMLTitleTextField, HTMLUserTextField: Check for `null` before using the value
Prateek Saxena [Tue, 17 Jul 2018 04:54:03 +0000 (10:24 +0530)]
HTMLTitleTextField, HTMLUserTextField: Check for `null` before using the value

Otherwise HTMLTitleTextField sends null to Title::newFromTextThrow(),
which causes an exception when trying to look it up in a cache.

Similar issue is present in HTMLUserTextField, although that one
hasn't caused problems in practice yet.

Follows-up on I93ad51ffe7bee597d2d127f4c5d6b2929ffc8f7e and
I0de4194a37b6ef260d35feb1e6730985775d5351.

Bug: T199763
Change-Id: I29ecd94cdf9e3064e6e9e7f4e65a50f267b5282d

5 years agoDeprecate SearchEngine::replacePrefixes
David Causse [Tue, 10 Jul 2018 12:10:09 +0000 (14:10 +0200)]
Deprecate SearchEngine::replacePrefixes

This should be handled internally by SearchEngine implementations.

Bug: T198860
Change-Id: Ifbfd0fcb81fcacf5228bd2ffcac7b80fca872b2a
Depends-On: I7d4ff9498fa1f4ea66835c634b8931f4c29993fb

5 years agoUnify SearchEngine normalizeNamespace and parseNamespacePrefixes
David Causse [Mon, 9 Jul 2018 16:55:54 +0000 (18:55 +0200)]
Unify SearchEngine normalizeNamespace and parseNamespacePrefixes

These methods are very similar there should be no need to have
two differents way to extract the namespace prefix.

Bug: T198860
Change-Id: I22802278452559d35a3d8f6068549c1fef1a5e86

5 years agoDeprecate usage of SearchEngine:transformSearchTerm
David Causse [Mon, 25 Jun 2018 17:19:32 +0000 (19:19 +0200)]
Deprecate usage of SearchEngine:transformSearchTerm

This method was introduced in 4115586000a575eb814a80868c817d18ee169d3b
to support the prefix URI param introduced by the InputBox extension.
There are no reasons that this logic is exposed to SearchEngine users
and should be handled internally by SearchEngine implementations
that supports it.
Previously the search query was updated, now the prefix param will passed
along using SpecialSearch::$extraParams.

Bug: T198318
Change-Id: I33518d3f3ddee741ff4f3b47eb4928009bea66d1
Depends-On: I67c7f1886dd6a2d07c12015e2711c138e9f140e9

5 years agoMerge "Rephrase 'logeventslist-more-filters'"
jenkins-bot [Tue, 17 Jul 2018 21:38:53 +0000 (21:38 +0000)]
Merge "Rephrase 'logeventslist-more-filters'"

5 years agoMerge "Introduce preference filters"
jenkins-bot [Tue, 17 Jul 2018 20:40:03 +0000 (20:40 +0000)]
Merge "Introduce preference filters"

5 years agoRephrase 'logeventslist-more-filters'
Bartosz Dziewoński [Tue, 17 Jul 2018 20:28:20 +0000 (22:28 +0200)]
Rephrase 'logeventslist-more-filters'

Bug: T117737
Change-Id: I6315ac76f8ddfeb024cb16331fc643ba726dfc34

5 years agoAuthManager: Don't invalidate BotPasswords if a password reset email is sent
Brad Jorsch [Tue, 17 Jul 2018 20:18:59 +0000 (16:18 -0400)]
AuthManager: Don't invalidate BotPasswords if a password reset email is sent

There's a difference between addition of credentials, which doesn't
need to invaliate BotPasswords, and changing or removal of credentials,
which does.

It seems most straightforward for the caller of
AuthManager::changeAuthenticationData() to know which is intended, so
let's add a flag there.

Bug: T199809
Change-Id: Ib8405734e605b94f3f0b66596ad95784cb365e4f

5 years agoIntroduce preference filters
Max Semenik [Fri, 6 Jul 2018 19:21:22 +0000 (12:21 -0700)]
Introduce preference filters

This normalizes handling of transformations on the boundaries between
preferences and generic form controls and removes the special case
where email-blacklist is passed around as an array internally, leaking
into the API.

As a result of this normalization, meta=userinfo no longer returns an
array of users, using the internal representation like action=options.

Bug: T198935
Change-Id: Iff63da0d215585cfcf083e7f7ec8ed45d5b77301

5 years agoMerge "LogEventsList: Remove unused messages"
jenkins-bot [Tue, 17 Jul 2018 20:05:18 +0000 (20:05 +0000)]
Merge "LogEventsList: Remove unused messages"

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 17 Jul 2018 19:54:08 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ia5e603f787ffeb5450d8695acee5f8dbde829ca8

5 years agoMerge "LogEventsListGetExtraInputs: Keep $input and add $formDescriptor"
jenkins-bot [Tue, 17 Jul 2018 18:52:18 +0000 (18:52 +0000)]
Merge "LogEventsListGetExtraInputs: Keep $input and add $formDescriptor"

5 years agoLogEventsListGetExtraInputs: Keep $input and add $formDescriptor
Prateek Saxena [Fri, 13 Jul 2018 02:02:13 +0000 (07:32 +0530)]
LogEventsListGetExtraInputs: Keep $input and add $formDescriptor

Follows-up on Iba3c6aa5ac40dcdee0792c2d045b238b02d76521.

Bug: T117737
Bug: T199495
Change-Id: I697e158887fcca1da88763a4c929a981d9211490

5 years agoMerge "Revert "Convert Title::getTitleCache() to using MapCacheLRU""
jenkins-bot [Tue, 17 Jul 2018 07:15:45 +0000 (07:15 +0000)]
Merge "Revert "Convert Title::getTitleCache() to using MapCacheLRU""

5 years agoRevert "Convert Title::getTitleCache() to using MapCacheLRU"
Krinkle [Tue, 17 Jul 2018 07:01:17 +0000 (07:01 +0000)]
Revert "Convert Title::getTitleCache() to using MapCacheLRU"

This reverts commit 7a25cd388c8adcce60f4c055295baed71e730616.

Bug: T199763
Change-Id: I276b833d75e93328a188056bf1eb2491461d6d53

5 years agoMerge "Cached HTML/JS shouldn't show two toggle links"
jenkins-bot [Tue, 17 Jul 2018 05:11:31 +0000 (05:11 +0000)]
Merge "Cached HTML/JS shouldn't show two toggle links"

5 years agoMerge "Clean up docs around $wgUseSharedUploads"
jenkins-bot [Tue, 17 Jul 2018 05:05:44 +0000 (05:05 +0000)]
Merge "Clean up docs around $wgUseSharedUploads"

5 years agoMerge "WebRequest: Fix flaky testGetElapsedTime test case"
jenkins-bot [Tue, 17 Jul 2018 05:03:49 +0000 (05:03 +0000)]
Merge "WebRequest: Fix flaky testGetElapsedTime test case"

5 years agoCached HTML/JS shouldn't show two toggle links
Fomafix [Wed, 11 Jul 2018 21:02:48 +0000 (14:02 -0700)]
Cached HTML/JS shouldn't show two toggle links

Per https://phabricator.wikimedia.org/T195053#4417392

Bug: T195053
Change-Id: I43ff902055b338b434658e9bb1d6eacdc5684ba2

5 years agoMerge "filebackend: switch callers from ProcessCacheLRU to MapCacheLRU"
jenkins-bot [Tue, 17 Jul 2018 03:44:26 +0000 (03:44 +0000)]
Merge "filebackend: switch callers from ProcessCacheLRU to MapCacheLRU"

5 years agoWebRequest: Fix flaky testGetElapsedTime test case
Timo Tijhof [Tue, 17 Jul 2018 03:23:30 +0000 (20:23 -0700)]
WebRequest: Fix flaky testGetElapsedTime test case

* Increase tolerance from 0.2s to 60s.

* Update mock to only set 'requestTime' when needed.

* Inject the mock timestamp.

* Increase test coverage by not just ensuring 0.0 is returned
  when invoked right after (which would be satisfied if it
  always returned 0.0), but use a timestamp that started
  slightly in the past to confirm it does (likely) do
  computation.

Bug: T199764
Change-Id: Iad9499391eecb4a9d1923d231a1a5f1afe173ecc

5 years agoParser: Remove style and script tags' content from TOC
Brad Jorsch [Mon, 2 Jul 2018 15:17:06 +0000 (11:17 -0400)]
Parser: Remove style and script tags' content from TOC

We don't want to display the stylesheet as part of the TOC entry if
someone uses TemplateStyles in a heading.

Bug: T198618
Change-Id: I2f7316daaba0cce662b6a4702ab87322e6783655

5 years agoMerge "Sync up with Parsoid parserTests.txt"
jenkins-bot [Tue, 17 Jul 2018 02:49:58 +0000 (02:49 +0000)]
Merge "Sync up with Parsoid parserTests.txt"

5 years agoMerge "objectcache: make BagOStuff::mergeViaLock() timeout more sensible"
jenkins-bot [Tue, 17 Jul 2018 01:09:25 +0000 (01:09 +0000)]
Merge "objectcache: make BagOStuff::mergeViaLock() timeout more sensible"

5 years agoMerge "objectcache: minor fix to MultiWriteBagOStuff::doWrite()"
jenkins-bot [Tue, 17 Jul 2018 01:00:06 +0000 (01:00 +0000)]
Merge "objectcache: minor fix to MultiWriteBagOStuff::doWrite()"

5 years agoSync up with Parsoid parserTests.txt
Arlo Breault [Mon, 16 Jul 2018 22:56:16 +0000 (18:56 -0400)]
Sync up with Parsoid parserTests.txt

This now aligns with Parsoid commit d473791ea982178af7a0fe15aff5cf8e21aaa5e8

Change-Id: Ide8a0d8df20242c9e60e40db653368ba3ef7a06c

5 years agoConvert LinkCache to using MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 13:11:12 +0000 (14:11 +0100)]
Convert LinkCache to using MapCacheLRU

Clean up the variable names while at it.

Change-Id: I3b7860c0657111d73567e247bcc1ebcbaef53e22

5 years agoMerge "Convert ChangesList to using MapCacheLRU"
jenkins-bot [Mon, 16 Jul 2018 21:14:53 +0000 (21:14 +0000)]
Merge "Convert ChangesList to using MapCacheLRU"

5 years agoMerge "New 'OutputPageAfterGetHeadLinksArray' hook, allowing extensions to modify...
jenkins-bot [Mon, 16 Jul 2018 20:19:53 +0000 (20:19 +0000)]
Merge "New 'OutputPageAfterGetHeadLinksArray' hook, allowing extensions to modify the return value of OutputPage#getHeadLinksArray"

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 16 Jul 2018 19:55:39 +0000 (21:55 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Id5530a817f15305e1befca60e09623b70b8652e8

5 years agoSet role=button on TOC show/hide checkbox
Bartosz Dziewoński [Mon, 16 Jul 2018 16:30:55 +0000 (18:30 +0200)]
Set role=button on TOC show/hide checkbox

This should give more intuitive hints in assistive technology,
identical (or similar) to the hints for the JavaScript-generated
button we had before 68527cf47935a0350d3f0a153bd06cbb98062ec8.
See results of testing with Windows Narrator/VoiceOver: T195053#4428563.

Bug: T195053
Change-Id: I9358b29f56ac1e43e9c5ed00d30ce6ffdf903299

5 years agoMerge "Convert Title::getTitleCache() to using MapCacheLRU"
jenkins-bot [Mon, 16 Jul 2018 15:44:52 +0000 (15:44 +0000)]
Merge "Convert Title::getTitleCache() to using MapCacheLRU"

5 years agoMerge "In PathRouterTest use @dataProvider where possible"
jenkins-bot [Mon, 16 Jul 2018 15:19:42 +0000 (15:19 +0000)]
Merge "In PathRouterTest use @dataProvider where possible"

5 years agoMerge "mediawiki.page.gallery: Various clean up and minor optimisations"
jenkins-bot [Mon, 16 Jul 2018 14:22:20 +0000 (14:22 +0000)]
Merge "mediawiki.page.gallery: Various clean up and minor optimisations"

5 years agoMerge "objectcache: avoid direct "bag" field references in CachedBagOStuff"
jenkins-bot [Mon, 16 Jul 2018 09:23:55 +0000 (09:23 +0000)]
Merge "objectcache: avoid direct "bag" field references in CachedBagOStuff"

5 years agoIn PathRouterTest use @dataProvider where possible
Tim Starling [Mon, 9 Jul 2018 04:56:21 +0000 (14:56 +1000)]
In PathRouterTest use @dataProvider where possible

"Where possible" turns out to be every test in this class.

I used named data sets (i.e. array keys in the provided array) for the
main set of tests, to improve the PHPUnit output.

Change-Id: Ic68edc01b3e0e174983471a36f3c5d52e28abfdd

5 years agoLogEventsList: Remove unused messages
Prateek Saxena [Mon, 16 Jul 2018 04:30:25 +0000 (10:00 +0530)]
LogEventsList: Remove unused messages

…and update documentation for $wgFilterLogTypes.

Follows-up on Iba3c6aa5ac40dcdee0792c2d045b238b02d76521.

Bug: T199657
Change-Id: I46c5836e4131423f930d59a1c5e7937339478c33

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 15 Jul 2018 19:54:32 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8fceb715311191c6ad73d5a0a5ec24e6009418f6

5 years agoTemporarily skip broken Selenium test
Daimona Eaytoy [Sun, 15 Jul 2018 13:35:11 +0000 (15:35 +0200)]
Temporarily skip broken Selenium test

This test was already flaky and was fixed in
I1fd0c49263e975c6b24e2e1f9a072486a6565dda. However, this caused failures
on several repos. Temporarily disable it until we'll get it to work
properly.

Bug: T199644
Change-Id: I88be83e01eb1789f28f09fc4a0be7ea17f402858

5 years agoMerge "Localize MW core namespaces to Santali"
jenkins-bot [Sun, 15 Jul 2018 13:25:46 +0000 (13:25 +0000)]
Merge "Localize MW core namespaces to Santali"

5 years agoLocalize MW core namespaces to Santali
Martin Urbanec [Sat, 14 Jul 2018 18:42:45 +0000 (20:42 +0200)]
Localize MW core namespaces to Santali

Bug: T198404
Change-Id: I4a68e55fc6771b9fc64ef823b399332d8eedfa38

5 years agoMerge "selenium: create edit for RecentChanges through GUI"
jenkins-bot [Sat, 14 Jul 2018 23:39:43 +0000 (23:39 +0000)]
Merge "selenium: create edit for RecentChanges through GUI"

5 years agoNew 'OutputPageAfterGetHeadLinksArray' hook, allowing extensions to modify the return...
Jack Phoenix [Sat, 14 Jul 2018 22:54:40 +0000 (01:54 +0300)]
New 'OutputPageAfterGetHeadLinksArray' hook, allowing extensions to modify the return value of OutputPage#getHeadLinksArray

Code from wikiHow codebase, where this hook is used by the following extensions:
* AlternateDomain -- used to remove certain links altogether and change the contents of other elements (e.g. <meta description="..." />)
* hooks (PageHooks) -- used to hide certain links for anons on noindexed pages to avoid leaking article info to Googlebot
* QADomain -- used to remove certain elements and correct <meta keywords="..." /> tags not to mention "wikiHow" if that string is present
* search (LSearch) -- used to remove canonical URL on Special:LSearch for SEO

Change-Id: I4a9ceb343bb5c0b4eb79e4589d36c3790938f8a9

5 years agoPass $opts by reference to subscribers of 'SpecialSearchPowerBox' hook to allow them...
Jack Phoenix [Wed, 11 Jul 2018 08:06:10 +0000 (11:06 +0300)]
Pass $opts by reference to subscribers of 'SpecialSearchPowerBox' hook to allow them to modify it

wikiHow added a new hook called 'SpecialSearchPowerBoxOpts', which was passed only &$opts, so that the Finner extension can unset the $opts array. Enhancing the pre-existing hook is a better solution in this case.

Change-Id: I091cbdc78fc779144554d8420a95435b7048c407

5 years agoMerge "Add new 'ArticleShowPatrolFooter' hook to allow extensions to decide if the...
jenkins-bot [Sat, 14 Jul 2018 22:33:29 +0000 (22:33 +0000)]
Merge "Add new 'ArticleShowPatrolFooter' hook to allow extensions to decide if the [mark as patrolled] link should not be shown"

5 years agoMerge "Don't throw E_NOTICEs about undefined properties"
jenkins-bot [Sat, 14 Jul 2018 22:31:22 +0000 (22:31 +0000)]
Merge "Don't throw E_NOTICEs about undefined properties"

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 14 Jul 2018 20:00:57 +0000 (22:00 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I4fb9db02edc442a1b98b6e88d4715ba7f77dc402

5 years agofilebackend: switch callers from ProcessCacheLRU to MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 12:53:13 +0000 (13:53 +0100)]
filebackend: switch callers from ProcessCacheLRU to MapCacheLRU

Change-Id: I6efe7122ff30053a85461d31be7b5ddad0a5d2af

5 years agoConvert ChangesList to using MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 13:04:36 +0000 (14:04 +0100)]
Convert ChangesList to using MapCacheLRU

Change-Id: I1cafb601dc644ca6d58ec0430e9608cfb497bcd8

5 years agoConvert PasswordReset to using MapCacheLRU
Aaron Schulz [Wed, 11 Jul 2018 13:08:08 +0000 (14:08 +0100)]
Convert PasswordReset to using MapCacheLRU

Avoid NULL user name that caused test failures

Change-Id: Ifc3b19cc7e172300123e7d2c7153b4357917ca74

5 years agoClean up docs around $wgUseSharedUploads
Timo Tijhof [Sat, 14 Jul 2018 01:22:44 +0000 (18:22 -0700)]
Clean up docs around $wgUseSharedUploads

* Remove references to these old configuration variables
  from documentation. Rather than wgLocalFileRepo referring to
  these for more information, move the docs there, and point
  there from the old variables.

* Move all their declarations in DefaultSettings.php together,
  and be in the same order as used in Setup.php.

* Add missing @var type and @since version docs.

Bug: T25122
Change-Id: I4eb9490ed4e978b2c3954de0593a9d0d3c5fe73c

5 years agoMerge "Mention MariaDB first, before MySQL in installer."
jenkins-bot [Sat, 14 Jul 2018 00:40:15 +0000 (00:40 +0000)]
Merge "Mention MariaDB first, before MySQL in installer."

5 years agoMerge "Accept BCP 47 codes as aliases for nonstandard variants"
jenkins-bot [Sat, 14 Jul 2018 00:30:44 +0000 (00:30 +0000)]
Merge "Accept BCP 47 codes as aliases for nonstandard variants"

5 years agoMerge "tests: Add a doc test for release notes' existence and line length"
jenkins-bot [Sat, 14 Jul 2018 00:27:22 +0000 (00:27 +0000)]
Merge "tests: Add a doc test for release notes' existence and line length"

5 years agoMerge "Follow-up 267d99fa8: Fix RELEASE-NOTES-1.32 line length"
jenkins-bot [Sat, 14 Jul 2018 00:17:30 +0000 (00:17 +0000)]
Merge "Follow-up 267d99fa8: Fix RELEASE-NOTES-1.32 line length"

5 years agotests: Add a doc test for release notes' existence and line length
James D. Forrester [Tue, 3 Jul 2018 22:22:09 +0000 (15:22 -0700)]
tests: Add a doc test for release notes' existence and line length

Change-Id: I502bedc0221e52b78b15b1749918500842533e7c

5 years agoAccept BCP 47 codes as aliases for nonstandard variants
C. Scott Ananian [Tue, 3 Jul 2018 20:12:38 +0000 (16:12 -0400)]
Accept BCP 47 codes as aliases for nonstandard variants

The browser Accept-Language header uses BCP 47 codes, which don't
precisely match our internal mediawiki variant names in a number of
places.  Allow proper BCP 47 codes to alias our internal variants
for: Accept-Language parsing, URL parsing, user preferences, and
explicit enumeration of codes in LanguageConverter rules.

Change-Id: I8468a56d5b88f5786abd0a17b67bda2f1687fd0c

5 years agoHard deprecate support for Parsoid v1 API
C. Scott Ananian [Fri, 13 Jul 2018 20:59:57 +0000 (16:59 -0400)]
Hard deprecate support for Parsoid v1 API

This was soft deprecated by f5c874cbaf2c1408342305fbc87dc6db36728e07 in
May 2015, and support for the v1 API was removed from Parsoid in May 2016,
but the compatibility code has persisted zombie-like in core.

Hard deprecate this now, to warn anyone who might still be using ancient
copies of Visual Editor and Parsoid, and then we can slice the code out
in the next MW release.

Bug: T100681
Change-Id: I68e0ab5b38f31b7708ba6f075dcb3328dde118d1

5 years agoMerge "Revert "Pedantic strict equals.""
jenkins-bot [Fri, 13 Jul 2018 20:45:38 +0000 (20:45 +0000)]
Merge "Revert "Pedantic strict equals.""

5 years agoMerge "Use func_num_args() in MapCacheLRU::clear() for sanity"
jenkins-bot [Fri, 13 Jul 2018 20:29:11 +0000 (20:29 +0000)]
Merge "Use func_num_args() in MapCacheLRU::clear() for sanity"

5 years agoMerge "Hard-deprecate ContentHandler::makeParserOptions()"
jenkins-bot [Fri, 13 Jul 2018 20:00:56 +0000 (20:00 +0000)]
Merge "Hard-deprecate ContentHandler::makeParserOptions()"

5 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 13 Jul 2018 19:58:19 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ibd2a95b4ebde7420a23dabbc3b8cdcfb12aa1452

5 years agoMerge "Ensure LanguageCode::bcp47() returns a valid BCP 47 language code"
jenkins-bot [Fri, 13 Jul 2018 19:28:25 +0000 (19:28 +0000)]
Merge "Ensure LanguageCode::bcp47() returns a valid BCP 47 language code"