jenkins-bot [Wed, 11 Sep 2019 19:33:33 +0000 (19:33 +0000)]
Merge "deferred: Fix MW version number when hard deprecating to '1.34'"
jenkins-bot [Wed, 11 Sep 2019 19:15:22 +0000 (19:15 +0000)]
Merge "jquery.color: Merge $.colorUtil back into this module"
jenkins-bot [Wed, 11 Sep 2019 19:07:08 +0000 (19:07 +0000)]
Merge "Update OOUI to v0.34.1"
jenkins-bot [Wed, 11 Sep 2019 18:58:32 +0000 (18:58 +0000)]
Merge "Pass the user and request into BlockManager::getUserBlock"
jenkins-bot [Wed, 11 Sep 2019 18:52:38 +0000 (18:52 +0000)]
Merge "mediawiki.special.userlogin.signup: Remove unused debounce dependency"
jenkins-bot [Wed, 11 Sep 2019 18:42:27 +0000 (18:42 +0000)]
Merge "mediawiki.util: Remove redundant IE8 support from addCSS()"
jenkins-bot [Wed, 11 Sep 2019 18:42:21 +0000 (18:42 +0000)]
Merge "mediawiki.util: Improve escapeId*() docs and minor optimisations"
Derick Alangi [Wed, 11 Sep 2019 17:41:05 +0000 (18:41 +0100)]
deferred: Fix MW version number when hard deprecating to '1.34'
Should be string or bool and not a float. The reason
49bbfc7 was
not triggered is because the deprecated code path is no longer being
executed in production.
Change-Id: Ieeffb8a6cc7177c52b4c54d66152c90ded1dc248
jenkins-bot [Wed, 11 Sep 2019 16:11:08 +0000 (16:11 +0000)]
Merge "SpecialRunJobs: optional output stats and status."
Timo Tijhof [Wed, 11 Sep 2019 04:46:50 +0000 (05:46 +0100)]
mediawiki.util: Add debounce() function
Bug: T213426
Change-Id: If370b959b2617d0f506ac3ed344af8c6a667e70d
David Causse [Wed, 11 Sep 2019 14:48:02 +0000 (16:48 +0200)]
Expose LinksUpdate recursive flag with a getter
knowing if recursion is enabled might help extensions implementing
LinksUpdate hooks to take some decisions.
E.g. CirrusSearch would like to know if a particular update needs to go to a
priorized queue or not (template transclusion).
Change-Id: I0a0de0d4621ed302b4fb550a1ddecd4ac8c5775a
Lucas Werkmeister [Mon, 9 Sep 2019 14:55:35 +0000 (16:55 +0200)]
mw.ForeignApi: don’t set origin for same-origin requests
If the foreign API has the same host as the current page (e. g. if it’s
actually the same wiki, or multiple wikis are installed under different
paths on the same host), then the browser will not send an Origin
header, and if we still set an origin parameter, then the API will
complain that the two don’t match. Detect this and unset the origin
parameter in that case.
Bug: T208601
Change-Id: Ia006f3dc3283ce3f81d4d72cbe9676a00797c4d0
daniel [Fri, 6 Sep 2019 16:40:07 +0000 (18:40 +0200)]
SpecialRunJobs: optional output stats and status.
This adds a parameter to SpecialRunJobs that lets it output statistics
about the jobs it has run.
The 'reached' field can be used to detect when the queue is emopty,
which is essential to know for clients that want to flush the entire
job queue, to ensure that all effects of any actions they have taken
have been processed.
More specifically, this provides a way for an external testing framework
to run all jobs after an action, so it can observe and assert the
effects of that action.
Bug: T231822
Change-Id: Ibb38490afca71efeb67300b9665951c429c19a3c
jenkins-bot [Wed, 11 Sep 2019 11:59:45 +0000 (11:59 +0000)]
Merge "Add namespace filter to Special:PagesWithProp"
Amir Aharoni [Wed, 11 Sep 2019 08:54:35 +0000 (11:54 +0300)]
Change the Balinese language autonym to "Bali"
This is done for consistency with how it is in language-data,
and with how most other names of languages of Indonesia are written.
The word "Basa" means "language" and is usually not necessary
in list of languages.
Change-Id: I1b5195a0d00c21b51ddb1a10cd3ed7b787363fa3
jenkins-bot [Wed, 11 Sep 2019 08:24:11 +0000 (08:24 +0000)]
Merge "Allow users who are partially blocked to delete revisions."
Thalia [Fri, 23 Aug 2019 16:11:45 +0000 (17:11 +0100)]
Pass the user and request into BlockManager::getUserBlock
Blocks are checked from the User object. Specifically,
User::getBlockedStatus instantiates a BlockManager and calls
BlockManager::getUserBlock. However, checking the block often depends
on knowing more about the state than the User should know. As a result,
the global user and request objects were passed into the block manager
on construction.
Whether the global request object should be passed into a service
constructor is still up for debate, so this moves the check for the
global state back to User::getBlockedStatus for now. (Note that it
reintroduces the problem of the User knowing more about state than it
should.)
This change also makes clearer the cases in which
BlockManager::getUserBlock is called from the User.
Different blocks may be sought, depending on the user and their
permissions. The user may be:
(1) The global user (and can be affected by IP blocks). The global
request object is needed for checking the IP address, the XFF
header and the cookies.
(2) The global user (and exempt from IP blocks). The global request
object is needed for checking the cookies.
(3) Another user (not the global user). No request object is available
or needed; just look for a block against the user account.
Cases #1 and #2 check whether the global user is blocked in practice;
the block may due to their user account being blocked or to an IP
address block or cookie block (or multiple of these). Case #3 simply
checks whether a user's account is blocked, and does not determine
whether the person using that account is affected in practice by any
IP address or cookie blocks.
Bug: T231919
Change-Id: I3f51fd3579514b83b567dfe20926df2f0930dc85
David Barratt [Thu, 18 Jul 2019 23:33:15 +0000 (19:33 -0400)]
Allow users who are partially blocked to delete revisions.
Currently, users who are partially blocked are prevented from deleting
revisions. The system should check to see if the user can edit the page.
Bug: T228486
Change-Id: Id08dfab9b0ebe9721d3552564ee9f9d1e1a4805a
Volker E [Wed, 11 Sep 2019 05:15:37 +0000 (22:15 -0700)]
Update OOUI to v0.34.1
Release notes:
https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.34.1
Bug: T230694
Bug: T232211
Bug: T232514
Bug: T232537
Depends-On: I00c6ecd8666d565b66af3021ecf5f339288606fe
Change-Id: Ic9b7033e3f52f415ec8aec845a65a8452d0e5d8f
Timo Tijhof [Wed, 11 Sep 2019 04:57:03 +0000 (05:57 +0100)]
mediawiki.special.userlogin.signup: Remove unused debounce dependency
The file in question does not use $.debounce() or $.throttle().
Probably a left-over from when this was factored out into
'mediawiki.htmlform.checker', which uses debounce (now mw.util).
Bug: T213426
Change-Id: Id48dc0f1119a21948ce0b93bb58c08f6e42516d7
Timo Tijhof [Wed, 11 Sep 2019 04:31:32 +0000 (05:31 +0100)]
mediawiki.util: Remove redundant IE8 support from addCSS()
Was added in
8eda03743c (2013) for IE8 support, but MW now
requires IE11+. The HTMLStyleElement.sheet property is available
in all supported browsers.
<https://caniuse.com/#feat=mdn-api_htmlstyleelement_sheet>
The method itself was introduced in 2010 (
79618024c2 / r76324).
Change-Id: Ia6a778a6d55e9257b9e55edfedd8f17587b96c1c
Timo Tijhof [Wed, 11 Sep 2019 04:30:16 +0000 (05:30 +0100)]
mediawiki.util: Improve escapeId*() docs and minor optimisations
Change-Id: Icfd8ce7e0de0041fe84a6ebcbfab97df03c18672
Timo Tijhof [Tue, 10 Sep 2019 03:03:44 +0000 (04:03 +0100)]
jquery.color: Merge $.colorUtil back into this module
I split this out of it back in 2011 with
83a7822df7bd0c.
I don't remember why. I think it had something to do with
Special:JavaScriptTest where I wanted to do something with colors.
Having those functions is useful in theory, but that doesn't require
its own module.
Change-Id: I8815d32c7072da83ddb9fbf955534d1f954692ba
jenkins-bot [Wed, 11 Sep 2019 04:03:14 +0000 (04:03 +0000)]
Merge "Throw if Redis::SERIALIZER_IGBINARY is not defined"
jenkins-bot [Wed, 11 Sep 2019 03:54:06 +0000 (03:54 +0000)]
Merge "resourceloader: Replace Xml::encodeJsCall by encodeJsonForScript"
Volker E [Tue, 10 Sep 2019 23:38:46 +0000 (16:38 -0700)]
Add general messagebox (neutral) styling to shared.css
Bug: T232553
Change-Id: I83105bb5e30d4440284ac42d6ca6a2dc32b21704
Volker E [Tue, 10 Sep 2019 23:16:26 +0000 (16:16 -0700)]
SpecialExpandTemplates: Add semantic 'errorbox' class to error
Bug: T232414
Change-Id: Idb493c76f0aec960afc589ce6a32736432c751e1
jenkins-bot [Tue, 10 Sep 2019 20:09:06 +0000 (20:09 +0000)]
Merge "Deprecate $wgContentHandlerUseDB"
jenkins-bot [Tue, 10 Sep 2019 19:55:28 +0000 (19:55 +0000)]
Merge "api: Make ApiQuery(All)DeletedRevisions accessible to everyone"
jenkins-bot [Tue, 10 Sep 2019 19:55:22 +0000 (19:55 +0000)]
Merge "Fix property filter for ApiQueryStashImageInfo::getPropertyNames"
Brad Jorsch [Tue, 10 Sep 2019 18:22:18 +0000 (14:22 -0400)]
Deprecate $wgContentHandlerUseDB
This was a "wait for DB schema change" feature flag that stuck around
for far too long.
Also of note is that setting $wgMultiContentRevisionSchemaMigrationStage
above SCHEMA_COMPAT_OLD, which has been the default since MW 1.32, will
already raise an exception if this is false.
Bug: T148137
Change-Id: I9a234fc55336660e9f24cac81db88a945348a1a5
jenkins-bot [Tue, 10 Sep 2019 19:00:47 +0000 (19:00 +0000)]
Merge "Allow partially blocked users to tag unrelated revisions"
jenkins-bot [Tue, 10 Sep 2019 18:53:05 +0000 (18:53 +0000)]
Merge "dispatchUser() should use a 302 http status code"
jenkins-bot [Tue, 10 Sep 2019 18:42:57 +0000 (18:42 +0000)]
Merge "Display error if Installer->execute() doesn't return a good status object"
jenkins-bot [Tue, 10 Sep 2019 18:24:23 +0000 (18:24 +0000)]
Merge "Add filter to `Special:BlockList` to exclude indefinite blocks"
jenkins-bot [Tue, 10 Sep 2019 18:23:54 +0000 (18:23 +0000)]
Merge "Deprecate the GetBlockedStatus hook"
Umherirrender [Thu, 9 May 2019 19:36:30 +0000 (21:36 +0200)]
Fix property filter for ApiQueryStashImageInfo::getPropertyNames
The property filter in ApiQueryStashImageInfo was only applied on calls
from the class itself. The call from UploadBase does not applied the
filter and than after successful upload of a stashed file the attributes
like user or mediatype are shown, but empty and not needed.
Change-Id: I89b2a935bacea81b4c8807d7ee77021377c8635c
sbassett [Tue, 27 Aug 2019 20:55:39 +0000 (15:55 -0500)]
dispatchUser() should use a 302 http status code
dispatchUser() in SpecialRedirect.php should use a 302 http
status code instead of a 301 to avoid certain caching issues.
Bug: T231386
Change-Id: Idb0cb21cc81d73bb9f77fc211af9cfd8b4f71e7d
jenkins-bot [Tue, 10 Sep 2019 16:14:45 +0000 (16:14 +0000)]
Merge "resourceloader: Remove comment about XmlJsCode wrapper"
jenkins-bot [Tue, 10 Sep 2019 16:06:06 +0000 (16:06 +0000)]
Merge "specials: Declare dynamic properties"
jenkins-bot [Tue, 10 Sep 2019 16:04:18 +0000 (16:04 +0000)]
Merge "widget: Improve properties documentation"
David Barratt [Fri, 19 Jul 2019 01:02:54 +0000 (21:02 -0400)]
Allow partially blocked users to tag unrelated revisions
Currently, partially blocked users cannot add, modify, or remove tags from
revisions that they are not blocked from. This change allows them to modify
the tags on those pages.
Bug: T221444
Change-Id: I737ed82f9c5139b45922cb4ea9111b4fdc7c1c61
jenkins-bot [Tue, 10 Sep 2019 15:45:17 +0000 (15:45 +0000)]
Merge "Restore FileBackendStoreOpHandle::call"
jenkins-bot [Tue, 10 Sep 2019 15:39:24 +0000 (15:39 +0000)]
Merge "Revert "Improve MultiHttpClient connection concurrency and reuse""
Daimona Eaytoy [Tue, 10 Sep 2019 13:18:25 +0000 (15:18 +0200)]
Restore FileBackendStoreOpHandle::call
Follows-up
eb06fb858e8492453ddb66f9b813e.
The property is still in use, see
https://codesearch.wmflabs.org/core/?q=-%3Ecall%5Cb&i=nope&files=&repos=
and failures at
https://integration.wikimedia.org/ci/job/mediawiki-core-php72-phan-docker/5893/console.
Change-Id: Ic9e72c3ab57cef3dd16c64ce279875df10ba3a14
Reedy [Tue, 10 Sep 2019 14:56:38 +0000 (14:56 +0000)]
Revert "Improve MultiHttpClient connection concurrency and reuse"
This reverts commit
46531d62852239f620f7b7c0af1e5747a9006228.
Bug: T232487
Change-Id: I8b1b829197f0f5758a85cb1547e13448d425aed2
Daimona Eaytoy [Tue, 10 Sep 2019 12:30:41 +0000 (14:30 +0200)]
specials: Declare dynamic properties
And also remove a couple of unused properties.
Change-Id: I66ed64627dc475dc85da9d858a19317435d05532
Daimona Eaytoy [Tue, 10 Sep 2019 12:05:14 +0000 (14:05 +0200)]
widget: Improve properties documentation
Explicitly declare all dynamic properties. Add docblocks for several
props. Remove the defaults when they're already set in the constructor.
Make TagMultiselectWidget use ?? like other widgets.
Change-Id: I889bf6f9e1bbe381f5bffb8ce1370c9e2e863520
Aaron Schulz [Tue, 27 Aug 2019 07:42:44 +0000 (00:42 -0700)]
externalstore: deprecate getLBInfo() dependency in ExternalStoreDB
Use the cluster and master server info array instead, when possible.
Also add initializeTable() method based on the one in addWiki.php.
This lets some internals be hidden from that script a bit more.
Bug: T231162
Change-Id: I694f12cc800684bcc13351021d9abc9a01bddfe9
Aaron Schulz [Thu, 5 Sep 2019 15:30:36 +0000 (08:30 -0700)]
Improve MultiHttpClient connection concurrency and reuse
Use CURLMOPT_MAX_HOST_CONNECTIONS to enforce concurrent request limits.
This gives better concurrency than using naïve array_chunk() batches, which
were serialized and treated all URLs as pessimistically from the same host.
Allow connection reuse for multi-URL request batches. This avoids overhead
from reconnections and reduces the number of TIME_WAIT handles when many
batch operations happen in a short time frame. Previously, the use of the
CURLOPT_FORBID_REUSE flag meant that connections were cached but never
reused for multi-URL batches (only single-URL batches).
Connection limits can be verified by running large runMulti() batches
in an interactive shell and inspecting netstat for TCP connections.
Bug: T232128
Change-Id: I5c5f1eceb3fdb501a8f22f2b949756065f12379a
Fomafix [Tue, 10 Sep 2019 06:07:57 +0000 (08:07 +0200)]
resourceloader: Replace Xml::encodeJsCall by encodeJsonForScript
Also document that encodeJsonForScript can return false on invalid UTF-8
characters.
Bug: T32956
Change-Id: I9c2fd33fb2130ada67fa70ff176e5488f1a014bf
jenkins-bot [Tue, 10 Sep 2019 09:24:45 +0000 (09:24 +0000)]
Merge "Add a dedicated Exception for SessionOverflow"
Thiemo Kreuz [Tue, 10 Sep 2019 08:46:46 +0000 (10:46 +0200)]
maintenance: Fix broken userOptions maintenance script
Broken via I973cc60 just a few weeks ago.
Change-Id: I9e60b84acf6c2bf751e2e6cb8e97f0a7cba2764d
jenkins-bot [Tue, 10 Sep 2019 08:41:00 +0000 (08:41 +0000)]
Merge "Add a preference to require email for password resets"
Daimona Eaytoy [Sat, 7 Sep 2019 14:21:09 +0000 (16:21 +0200)]
Add a dedicated Exception for SessionOverflow
Instead of setting a custom property and checking via isset + count.
Change-Id: I087eeb2eee414218bbd6023ad1703fde22292281
Translation updater bot [Tue, 10 Sep 2019 06:45:12 +0000 (08:45 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ib122e0da175fc0a3c8ab85bc93c496ef4fb08ff9
Fomafix [Tue, 10 Sep 2019 05:30:07 +0000 (07:30 +0200)]
resourceloader: Remove comment about XmlJsCode wrapper
The support for the XmlJsCode wrapper got removed in
23d066618d.
Change-Id: If14065277699aa9cca70107ff0174bd51f757c31
jenkins-bot [Tue, 10 Sep 2019 03:37:43 +0000 (03:37 +0000)]
Merge "filebackend: remove unneeded is_dir() call in FSFileBackend::doCleanInternal()"
jenkins-bot [Tue, 10 Sep 2019 03:35:33 +0000 (03:35 +0000)]
Merge "filebackend: clean up some comments and remove unused FileBackendStoreOpHandle field"
jenkins-bot [Tue, 10 Sep 2019 03:32:45 +0000 (03:32 +0000)]
Merge "Cleanup and document some LCStoreDB fields"
jenkins-bot [Tue, 10 Sep 2019 03:32:37 +0000 (03:32 +0000)]
Merge "Move callers away from Title::GAID_FOR_UPDATE"
Aaron Schulz [Sun, 8 Sep 2019 21:39:52 +0000 (14:39 -0700)]
filebackend: remove unneeded is_dir() call in FSFileBackend::doCleanInternal()
Change-Id: Ia630e2052edd31f0d9b6ed7068497dc4ae66d917
Timo Tijhof [Tue, 10 Sep 2019 02:24:18 +0000 (03:24 +0100)]
Revision: Inject Logger instead of LoggerSpi
For consistency with other services and entry points.
The caller decides on the channel name. This also narrows the
surface area for the DI layer by only requiring LoggerInterface
which is significantly lighter and easier to mock than an entire
LoggerProvider/Spi.
Change-Id: Ia71f2e1c0a1a08c9edf0736eb627c5d4a2dde8d5
Reedy [Tue, 10 Sep 2019 02:19:51 +0000 (03:19 +0100)]
Display error if Installer->execute() doesn't return a good status object
Bug: T232425
Change-Id: Ic41acdfd6cdd96a393e0b2af28f69da1ff6653b7
DannyS712 [Tue, 10 Sep 2019 02:06:43 +0000 (02:06 +0000)]
Add namespace filter to Special:PagesWithProp
Bug: T50247
Change-Id: I887175add5e151cb4e195a15efeb334486297d22
Reedy [Sun, 14 Apr 2019 15:14:22 +0000 (16:14 +0100)]
Make most special pages class names match filename
Change-Id: I3a9f932acb7d9cf44a984b5d97f9fbc6b8670f7d
Aaron Schulz [Mon, 9 Sep 2019 22:50:33 +0000 (15:50 -0700)]
Cleanup and document some LCStoreDB fields
Change-Id: I1edcfbaa0889a84803a9d66d2bc6962664867650
jenkins-bot [Mon, 9 Sep 2019 23:15:26 +0000 (23:15 +0000)]
Merge "Update phpCharToUpper.json based on current differences"
Thalia [Fri, 6 Sep 2019 12:19:14 +0000 (13:19 +0100)]
Deprecate the GetBlockedStatus hook
This was replaced by GetUserBlock in
7a5508573a.
Handlers in production were updated to use GetUserBlock in
I952aa7d40 and Ibbcd3a239.
Bug: T229035
Change-Id: I95f9fabc6e795243cfe0a1e8737ca6abfb865538
Vincent Privat [Mon, 9 Sep 2019 20:07:38 +0000 (22:07 +0200)]
api: Make ApiQuery(All)DeletedRevisions accessible to everyone
Effectively removes the 'deletedhistory' requirement, as this API does
not expose more information than the public toolforge database replica.
Bug: T232389
Change-Id: I84dc138aa310b601423161d1140891d47f8c64d8
jenkins-bot [Mon, 9 Sep 2019 20:25:30 +0000 (20:25 +0000)]
Merge "Mark passing non ObjectFactory spec to ApiModuleManager as deprecated"
jenkins-bot [Mon, 9 Sep 2019 20:20:13 +0000 (20:20 +0000)]
Merge "Fix use of GenderCache in ApiPageSet::processTitlesArray"
Aaron Schulz [Thu, 4 Jul 2019 21:24:34 +0000 (14:24 -0700)]
Move callers away from Title::GAID_FOR_UPDATE
These callers just need to load some data from DB_MASTER.
Subsequent code needing that latest title data should also use the
required flags, rather than relying on flakey global cache state.
Change-Id: I53248ea4b5bf1cd953f956c41b8244831ec5ef04
jenkins-bot [Mon, 9 Sep 2019 20:10:19 +0000 (20:10 +0000)]
Merge "filebackend: replace wfTimestamp() calls with ConvertibleTimestamp::convert()"
jenkins-bot [Mon, 9 Sep 2019 20:05:01 +0000 (20:05 +0000)]
Merge "Revert and fix "Revert "Modify -—with-extensions to throw extension dependency errors"""
mainframe98 [Sun, 8 Sep 2019 10:28:55 +0000 (12:28 +0200)]
Mark passing non ObjectFactory spec to ApiModuleManager as deprecated
With Iee04afc27283547dd68d6db93f44ac2e0ebf1258, passing both the $class
and $factory parameter is deprecated in favor of just passing an
ObjectFactory spec as the third parameter.
Change-Id: I7b04d82c9daba52f5dc5e6c528739336279c7550
Umherirrender [Sat, 22 Sep 2018 09:31:02 +0000 (11:31 +0200)]
Fix use of GenderCache in ApiPageSet::processTitlesArray
Title::getPrefixedText was called before the GenderCache was set up,
which lazy loads the cache for each title,
resulting in one query per user title
Splitted the foreach to fill the cache at a better location
Added a test for ApiPageSet to test that the gender cache is filled
Bug: T200238
Change-Id: I7972dd1bf3731a92328caab20e70d7b9b82c1f7c
Thalia [Mon, 9 Sep 2019 15:57:17 +0000 (16:57 +0100)]
Deprecate the UserIsHidden hook
This was replaced by GetUserBlock in
7a5508573a.
Handlers in production were updated to use GetUserBlock in
Ibbcd3a239.
Bug: T228948
Change-Id: I3e6da73e595e2bd6a96600fe2a6dc68a54d06a2e
jenkins-bot [Mon, 9 Sep 2019 19:29:48 +0000 (19:29 +0000)]
Merge "api: Update QueryFilearchive to provide information to everyone"
jenkins-bot [Mon, 9 Sep 2019 19:25:42 +0000 (19:25 +0000)]
Merge "Use ObjectFactory to create API modules"
jenkins-bot [Mon, 9 Sep 2019 19:25:32 +0000 (19:25 +0000)]
Merge "Provide command to adjust phpunit.xml for code coverage"
jenkins-bot [Mon, 9 Sep 2019 19:11:52 +0000 (19:11 +0000)]
Merge "maintenance: Explicitly declare all used properties"
Max Semenik [Thu, 5 Sep 2019 01:12:09 +0000 (18:12 -0700)]
Add a preference to require email for password resets
The actual functonality will come in a later commit.
Bug: T231495
Change-Id: I9977b0d51a2b89b79c199bc4423f123e581e2a2f
jenkins-bot [Mon, 9 Sep 2019 18:51:39 +0000 (18:51 +0000)]
Merge "Remove spurious `@class` tags in two files"
mainframe98 [Fri, 6 Sep 2019 11:38:55 +0000 (13:38 +0200)]
Use ObjectFactory to create API modules
This will allow constructing API modules that need services.
This overhauls some of the internals of the ApiModuleManager,
but the public interface remains unchanged.
The $class parameter of addModule, (now called $spec)
also allows passing an array with the spec of the module.
Note that this spec requires the attribute 'class' to be present,
even when 'factory' is specified. This is the same as before,
where $class was always required.
In a perfect DI world ObjectFactory would be injected into
ApiMain::__construct and ApiMain would pass that to its instance
of ApiModuleManager, but that is currently not possible, so for now
it is injected in ApiModuleManager by having ApiMain::__construct
call the service locator.
Bug: T222388
Change-Id: Iee04afc27283547dd68d6db93f44ac2e0ebf1258
jenkins-bot [Mon, 9 Sep 2019 18:49:08 +0000 (18:49 +0000)]
Merge "Special:Contributions - use `label` instead of `radioLabel` for username"
jenkins-bot [Mon, 9 Sep 2019 18:41:03 +0000 (18:41 +0000)]
Merge "Use @phan-template instead of @template"
jenkins-bot [Mon, 9 Sep 2019 18:39:39 +0000 (18:39 +0000)]
Merge "DifferenceEngine: Use quickUserCan for display of rollback link"
jenkins-bot [Mon, 9 Sep 2019 18:28:51 +0000 (18:28 +0000)]
Merge "mediawiki.util: Move mw.RegExp over as well to simplify migration"
Timo Tijhof [Mon, 9 Sep 2019 18:00:28 +0000 (19:00 +0100)]
Remove spurious `@class` tags in two files
This was only used in two PHP files in all of core. It is not
needed (the block above the class keyword is naturally for that
class) and only emits a warning from Doxygen:
> PHPVersionCheck.php:35: warning: missing argument after \class.
> SpecialPageData.php:28: warning: missing argument after \class.
This is unlike JSDuck, where it is used to differentiate a function
from a constructor/class.
In Doxygen, `@class` is only used to create a virtual class within
the docs that isn't explicitly in an indexed file, and thus
requires a name.
Bug: T232104
Change-Id: Ie504a8e2b72be8f370dc0c90da6a03f64d93df2d
jenkins-bot [Mon, 9 Sep 2019 17:56:26 +0000 (17:56 +0000)]
Merge "Follow-up
8697ba8: No need for two dependencies on the same module"
Daimona Eaytoy [Mon, 9 Sep 2019 17:29:22 +0000 (19:29 +0200)]
Use @phan-template instead of @template
And move it after the method description to avoid doxygen messing up
with it.
Change-Id: I0f93050b390ffab1a88cbdc7c2d7a7a2a50ce3bf
Timo Tijhof [Mon, 9 Sep 2019 17:23:34 +0000 (18:23 +0100)]
mediawiki.util: Move mw.RegExp over as well to simplify migration
Follows-up
8697ba835463c94. In order to allow for a simpler migration
and to keep compatibility over 1 stable release at least, deprecate
the module only, and keep the alias in the destination module.
This means 'mediawiki.RegExp' can be replaced with 'mediawiki.util',
without it causing code to break. It will still warn about
the method being deprecated, which can then be fixed separately,
depending on whether compat is needed.
This is mainly to reduce risk from mass migrations in user scripts
and gadgets (to do in two separate passes).
Bug: T218339
Change-Id: I07ba0a481b83fe704be3a17199070bafba4d5233
DannyS712 [Sun, 25 Aug 2019 00:18:30 +0000 (00:18 +0000)]
Add filter to `Special:BlockList` to exclude indefinite blocks
Bug: T112380
Change-Id: If4bcccc46605c03793213da4d47bacf2200afc36
jenkins-bot [Mon, 9 Sep 2019 17:16:56 +0000 (17:16 +0000)]
Merge "mediawiki.Title: Minor optimizations for mw.Title JavaScript code"
jenkins-bot [Mon, 9 Sep 2019 17:15:29 +0000 (17:15 +0000)]
Merge "mediawiki.Title: Change internal 'title' field to include file extension"
jenkins-bot [Mon, 9 Sep 2019 17:10:43 +0000 (17:10 +0000)]
Merge "Fix typo in ChangesListSpecialPageTest"
jenkins-bot [Mon, 9 Sep 2019 17:09:39 +0000 (17:09 +0000)]
Merge "Mostly drop old pre-actor user schemas"
James D. Forrester [Mon, 9 Sep 2019 17:00:39 +0000 (10:00 -0700)]
Follow-up
8697ba8: No need for two dependencies on the same module
Change-Id: I1ac1cbe20bc66092ce15d426d0d6a8e0c8c8d815
jenkins-bot [Mon, 9 Sep 2019 16:55:17 +0000 (16:55 +0000)]
Merge "maintenance/Maintenance.php: Fix MW_ENTRY_POINT definition (followup I24099f4c)"