40use Wikimedia\Parsoid\Core\LinkTarget as ParsoidLinkTarget;
609 return $this->container->run(
611 [ $autoblockip, $block ]
617 return $this->container->run(
625 return $this->container->run(
626 'ActionBeforeFormDisplay',
627 [ $name, $form, $article ]
633 return $this->container->run(
634 'ActionModifyFormFields',
635 [ $name, &$fields, $article ]
641 return $this->container->run(
642 'AfterBuildFeedLinks',
649 $this->container->run(
650 'AfterFinalPageOutput',
652 [
'abortable' => false ]
658 $sRevCount, $pageInfo
660 return $this->container->run(
662 [ $title, $foreignTitle, $revCount, $sRevCount, $pageInfo ]
668 return $this->container->run(
669 'AfterParserFetchFileAndTitle',
670 [ $parser, $ig, &$html ]
676 return $this->container->run(
686 return $this->container->run(
687 'AlternateEditPreview',
688 [ $editPage, &$content, &$previewHTML, &$parserOutput ]
694 return $this->container->run(
695 'AlternateUserMailer',
696 [ $headers, $to, $from, $subject, $body ]
702 return $this->container->run(
704 [ &$tables, &$conds, &$joinConds ]
710 return $this->container->run(
718 return $this->container->run(
719 'ArticleConfirmDelete',
720 [ $article, $output, &$reason ]
726 return $this->container->run(
727 'ArticleContentOnDiff',
728 [ $diffEngine, $output ]
736 return $this->container->run(
738 [ $wikiPage, $user, &$reason, &$error, &$status, $suppress ]
744 return $this->container->run(
745 'ArticleDeleteAfterSuccess',
746 [ $title, $outputPage ]
752 $content, $logEntry, $archivedRevisionCount
754 return $this->container->run(
755 'ArticleDeleteComplete',
756 [ $wikiPage, $user, $reason, $id, $content, $logEntry,
757 $archivedRevisionCount ]
763 return $this->container->run(
764 'ArticleEditUpdateNewTalk',
765 [ $wikiPage, $recipient ]
771 return $this->container->run(
773 [ $title, &$article, $context ]
779 return $this->container->run(
780 'ArticleMergeComplete',
781 [ $targetTitle, $destTitle ]
787 return $this->container->run(
788 'ArticlePageDataAfter',
797 return $this->container->run(
798 'ArticlePageDataBefore',
799 [ $wikiPage, &$fields, &$tables, &$joinConds ]
805 return $this->container->run(
806 'ArticleParserOptions',
813 return $this->container->run(
814 'ArticlePrepareTextForEdit',
815 [ $wikiPage, $popts ]
821 return $this->container->run(
823 [ $wikiPage, $user, $protect, $reason ]
829 return $this->container->run(
830 'ArticleProtectComplete',
831 [ $wikiPage, $user, $protect, $reason ]
837 return $this->container->run(
847 return $this->container->run(
848 'ArticleRevisionViewCustom',
849 [ $revision, $title, $oldid, $output ]
857 return $this->container->run(
858 'ArticleRevisionVisibilitySet',
859 [ $title, $ids, $visibilityChangeMap ]
865 return $this->container->run(
866 'ArticleShowPatrolFooter',
875 return $this->container->run(
877 [ $title, $create, $comment, $oldPageId, $restoredPages ]
885 return $this->container->run(
886 'ArticleUpdateBeforeRedirect',
887 [ $article, &$sectionanchor, &$extraq ]
893 return $this->container->run(
895 [ $article, $patrolFooterShown ]
901 return $this->container->run(
903 [ $article, &$outputDone, &$pcache ]
909 return $this->container->run(
910 'ArticleViewRedirect',
917 return $this->container->run(
918 'Article::MissingArticleConditions',
919 [ &$conds, $logTypes ]
925 &$formDescriptor, $action
927 return $this->container->run(
928 'AuthChangeFormFields',
929 [ $requests, $fieldInfo, &$formDescriptor, $action ]
935 $this->container->run(
936 'AuthManagerFilterProviders',
938 [
'abortable' => false ]
944 $username, $extraData
946 return $this->container->run(
947 'AuthManagerLoginAuthenticateAudit',
948 [ $response, $user, $username, $extraData ]
959 return $this->container->run(
960 'AuthManagerVerifyAuthentication',
961 [ $user, &$response, $authManager, $info ],
967 return $this->container->run(
968 'AuthPreserveQueryParams', [ &$params, $options ]
974 return $this->container->run(
975 'AuthenticationAttemptThrottled', [ $type, $username, $ip ]
981 return $this->container->run(
982 'AutopromoteCondition',
983 [ $type, $args, $user, &$result ]
989 return $this->container->run(
990 'BacklinkCacheGetConditions',
991 [ $table, $title, &$conds ]
997 return $this->container->run(
998 'BacklinkCacheGetPrefix',
1005 return $this->container->run(
1013 return $this->container->run(
1014 'BeforeDisplayNoArticleText',
1023 return $this->container->run(
1025 [ $title, $unused, $output, $user,
$request, $mediaWiki ]
1031 $this->container->run(
1032 'BeforePageDisplay',
1034 [
'abortable' => false ]
1040 return $this->container->run(
1041 'BeforePageRedirect',
1042 [ $out, &$redirect, &$code ]
1050 return $this->container->run(
1051 'BeforeParserFetchFileAndTitle',
1052 [ $parser, $nt, &$options, &$descQuery ]
1061 return $this->container->run(
1062 'BeforeParserFetchTemplateRevisionRecord',
1063 [ $contextTitle, $title, &$skip, &$revRecord ]
1069 $summary, $flags, $revisionRecord, $editResult, &$approved
1071 $this->container->run(
1072 'BeforeRevertedTagUpdate',
1073 [ $wikiPage, $user, $summary, $flags, $revisionRecord, $editResult,
1075 [
'abortable' => false ]
1083 return $this->container->run(
1084 'BeforeWelcomeCreation',
1085 [ &$welcome_creation_msg, &$injected_html ]
1091 &$checkImageAreaHookResult
1093 return $this->container->run(
1094 'BitmapHandlerCheckImageArea',
1095 [ $image, &$params, &$checkImageAreaHookResult ]
1103 return $this->container->run(
1104 'BitmapHandlerTransform',
1105 [ $handler, $image, &$scalerParams, &$mto ]
1111 return $this->container->run(
1113 [ $block, $user, &$reason ]
1119 return $this->container->run(
1121 [ $block, $user, $priorBlock ]
1127 return $this->container->run(
1135 return $this->container->run(
1136 'CanonicalNamespaces',
1143 return $this->container->run(
1144 'CategoryAfterPageAdded',
1145 [ $category, $wikiPage ]
1151 return $this->container->run(
1152 'CategoryAfterPageRemoved',
1153 [ $category, $wikiPage, $id ]
1159 return $this->container->run(
1167 return $this->container->run(
1168 'CategoryViewer::doCategoryQuery',
1175 return $this->container->run(
1176 'CategoryViewer::generateLink',
1177 [ $type, $title, $html, &$link ]
1183 return $this->container->run(
1184 'ChangeAuthenticationDataAudit',
1191 return $this->container->run(
1192 'ChangesListInitRows',
1193 [ $changesList, $rows ]
1199 &$s, $rc, $unpatrolled, $watched
1201 return $this->container->run(
1202 'ChangesListInsertArticleLink',
1203 [ $changesList, &$articlelink, &$s, $rc, $unpatrolled, $watched ]
1209 return $this->container->run(
1210 'ChangesListInsertLogEntry',
1211 [ $entry, $context, &$html, &$classes, &$attribs ]
1217 &$conds, &$query_options, &$join_conds, $opts
1219 return $this->container->run(
1220 'ChangesListSpecialPageQuery',
1221 [ $name, &$tables, &$fields, &$conds, &$query_options,
1222 &$join_conds, $opts ]
1228 return $this->container->run(
1229 'ChangesListSpecialPageStructuredFilters',
1236 return $this->container->run(
1237 'ChangeTagAfterDelete',
1244 return $this->container->run(
1245 'ChangeTagCanCreate',
1246 [ $tag, $user, &$status ]
1252 return $this->container->run(
1253 'ChangeTagCanDelete',
1254 [ $tag, $user, &$status ]
1260 $prevTags, $rc_id, $rev_id, $log_id, $params, $rc, $user
1262 return $this->container->run(
1263 'ChangeTagsAfterUpdateTags',
1264 [ $addedTags, $removedTags, $prevTags, $rc_id, $rev_id, $log_id,
1265 $params, $rc, $user ]
1271 return $this->container->run(
1272 'ChangeTagsAllowedAdd',
1273 [ &$allowedTags, $addTags, $user ]
1279 return $this->container->run(
1280 'ChangeTagsListActive',
1287 return $this->container->run(
1289 [ $performer, $user, &$add, &$remove ]
1295 return $this->container->run(
1296 'Collation::factory',
1297 [ $collationName, &$collationObject ]
1303 return $this->container->run(
1304 'ConfirmEmailComplete',
1311 return $this->container->run(
1312 'ContentAlterParserOutput',
1313 [ $content, $title, $parserOutput ]
1319 $generateHtml, &$parserOutput
1321 return $this->container->run(
1322 'ContentGetParserOutput',
1323 [ $content, $title, $revId, $options, $generateHtml, &$parserOutput ]
1329 return $this->container->run(
1330 'ContentHandlerDefaultModelFor',
1337 return $this->container->run(
1338 'ContentHandlerForModelID',
1339 [ $modelName, &$handler ]
1345 return $this->container->run(
1346 'ContentModelCanBeUsedOn',
1347 [ $contentModel, $title, &$ok ]
1353 $policyConfig, $mode
1355 return $this->container->run(
1356 'ContentSecurityPolicyDefaultSource',
1357 [ &$defaultSrc, $policyConfig, $mode ]
1365 return $this->container->run(
1366 'ContentSecurityPolicyDirectives',
1367 [ &$directives, $policyConfig, $mode ]
1373 $policyConfig, $mode
1375 return $this->container->run(
1376 'ContentSecurityPolicyScriptSource',
1377 [ &$scriptSrc, $policyConfig, $mode ]
1383 return $this->container->run(
1384 'ContribsPager::getQueryInfo',
1385 [ $pager, &$queryInfo ]
1393 return $this->container->run(
1394 'ContribsPager::reallyDoQuery',
1395 [ &$data, $pager, $offset, $limit, $descending ]
1401 $this->container->run(
1411 return $this->container->run(
1412 'ContributionsLineEnding',
1413 [ $page, &$ret, $row, &$classes, &$attribs ]
1419 return $this->container->run(
1420 'ContributionsToolLinks',
1421 [ $id, $title, &$tools, $specialPage ]
1427 return $this->container->run(
1429 [ $content, $toModel, $lossy, &$result ]
1435 return $this->container->run(
1445 return $this->container->run(
1446 'DeletedContribsPager::reallyDoQuery',
1447 [ &$data, $pager, $offset, $limit, $descending ]
1453 &$classes, &$attribs
1455 return $this->container->run(
1456 'DeletedContributionsLineEnding',
1457 [ $page, &$ret, $row, &$classes, &$attribs ]
1463 return $this->container->run(
1464 'DeleteUnknownPreferences',
1471 return $this->container->run(
1472 'DifferenceEngineAfterLoadNewText',
1473 [ $differenceEngine ]
1483 return $this->container->run(
1484 'TextSlotDiffRendererTablePrefix',
1485 [ $textSlotDiffRenderer, $context, &$parts ]
1493 return $this->container->run(
1494 'DifferenceEngineLoadTextAfterNewContentIsLoaded',
1495 [ $differenceEngine ]
1501 &$markAsPatrolledLink, $rcid
1503 return $this->container->run(
1504 'DifferenceEngineMarkPatrolledLink',
1505 [ $differenceEngine, &$markAsPatrolledLink, $rcid ]
1513 return $this->container->run(
1514 'DifferenceEngineMarkPatrolledRCID',
1515 [ &$rcid, $differenceEngine, $change, $user ]
1521 $formattedRevisionTools, $nextlink, $rollback, $newminor, $diffOnly, $rdel,
1524 return $this->container->run(
1525 'DifferenceEngineNewHeader',
1526 [ $differenceEngine, &$newHeader, $formattedRevisionTools,
1527 $nextlink, $rollback, $newminor, $diffOnly, $rdel, $unhide ]
1533 $prevlink, $oldminor, $diffOnly, $ldel, $unhide
1535 return $this->container->run(
1536 'DifferenceEngineOldHeader',
1537 [ $differenceEngine, &$oldHeader, $prevlink, $oldminor, $diffOnly,
1544 return $this->container->run(
1545 'DifferenceEngineOldHeaderNoOldRev',
1552 $differenceEngine, $out, $parserOutput, $wikiPage
1554 return $this->container->run(
1555 'DifferenceEngineRenderRevisionAddParserOutput',
1556 [ $differenceEngine, $out, $parserOutput, $wikiPage ]
1562 return $this->container->run(
1563 'DifferenceEngineRenderRevisionShowFinalPatrolLink',
1570 return $this->container->run(
1571 'DifferenceEngineShowDiff',
1572 [ $differenceEngine ]
1578 return $this->container->run(
1579 'DifferenceEngineShowDiffPage',
1588 return $this->container->run(
1589 'DifferenceEngineShowDiffPageMaybeShowMissingRevision',
1590 [ $differenceEngine ]
1596 return $this->container->run(
1597 'DifferenceEngineShowEmptyOldContent',
1598 [ $differenceEngine ]
1604 return $this->container->run(
1605 'DifferenceEngineViewHeader',
1606 [ $differenceEngine ]
1611 public function onDiffTools( $newRevRecord, &$links, $oldRevRecord, $userIdentity ) {
1612 return $this->container->run(
1614 [ $newRevRecord, &$links, $oldRevRecord, $userIdentity ]
1620 return $this->container->run(
1621 'DisplayOldSubtitle',
1622 [ $article, &$oldid ]
1628 $summary, $user, $minoredit
1630 return $this->container->run(
1631 'EditFilterMergedContent',
1632 [ $context, $content, $status, $summary, $user, $minoredit ]
1638 return $this->container->run(
1639 'EditFormInitialText',
1646 return $this->container->run(
1647 'EditFormPreloadText',
1654 return $this->container->run(
1655 'EditPageBeforeConflictDiff',
1662 return $this->container->run(
1663 'EditPageBeforeEditButtons',
1664 [ $editpage, &$buttons, &$tabindex ]
1670 return $this->container->run(
1671 'EditPageBeforeEditToolbar',
1678 return $this->container->run(
1679 'EditPageCopyrightWarning',
1686 return $this->container->run(
1687 'EditPageGetCheckboxesDefinition',
1688 [ $editpage, &$checkboxes ]
1694 return $this->container->run(
1695 'EditPageGetDiffContent',
1696 [ $editPage, &$newtext ]
1702 return $this->container->run(
1703 'EditPageGetPreviewContent',
1704 [ $editPage, &$content ]
1710 return $this->container->run(
1711 'EditPageNoSuchSection',
1712 [ $editpage, &$res ]
1718 return $this->container->run(
1719 'EditPageTosSummary',
1726 return $this->container->run(
1727 'EditPage::attemptSave',
1736 return $this->container->run(
1737 'EditPage::attemptSave:after',
1738 [ $editpage_Obj, $status, $resultDetails ]
1744 return $this->container->run(
1745 'EditPage::importFormData',
1752 return $this->container->run(
1753 'EditPage::showEditForm:fields',
1760 return $this->container->run(
1761 'EditPage::showEditForm:initial',
1768 return $this->container->run(
1769 'EditPage::showReadOnlyForm:initial',
1778 return $this->container->run(
1779 'EditPage::showStandardInputs:options',
1780 [ $editor, $out, &$tabindex ]
1786 return $this->container->run(
1788 [ $user, &$confirmed ]
1793 public function onEmailUser( &$to, &$from, &$subject, &$text, &$error ) {
1794 return $this->container->run(
1796 [ &$to, &$from, &$subject, &$text, &$error ]
1802 return $this->container->run(
1804 [ &$to, &$from, &$subject, &$text ]
1810 return $this->container->run(
1811 'EmailUserComplete',
1812 [ $to, $from, $subject, $text ]
1818 return $this->container->run(
1826 return $this->container->run(
1827 'EmailUserPermissionsErrors',
1828 [ $user, $editToken, &$hookErr ]
1834 return $this->container->run(
1835 'EmailUserAuthorizeSend',
1836 [ $sender, $status ]
1850 return $this->container->run(
1851 'EmailUserSendEmail',
1852 [ $from, $fromAddress, $to, $toAddress, $subject, $text, $status ]
1860 return $this->container->run(
1861 'EnhancedChangesListModifyBlockLineData',
1862 [ $changesList, &$data, $rc ]
1868 $block, $rc, &$classes, &$attribs
1870 return $this->container->run(
1871 'EnhancedChangesListModifyLineData',
1872 [ $changesList, &$data, $block, $rc, &$classes, &$attribs ]
1880 return $this->container->run(
1881 'EnhancedChangesList::getLogText',
1882 [ $changesList, &$links, $block ]
1888 return $this->container->run(
1889 'ExemptFromAccountCreationThrottle',
1896 return $this->container->run(
1904 return $this->container->run(
1906 [ $user, $skin, &$list, $groups ]
1914 return $this->container->run(
1915 'FileDeleteComplete',
1916 [ $file, $oldimage, $article, $user, $reason ]
1922 return $this->container->run(
1924 [ $file, $thumb, $tmpThumbPath, $thumbPath ]
1930 return $this->container->run(
1931 'FileUndeleteComplete',
1932 [ $title, $fileVersions, $user, $reason ]
1938 return $this->container->run(
1940 [ $file, $reupload, $hasDescription ]
1948 return $this->container->run(
1949 'FormatAutocomments',
1950 [ &$comment, $pre, $extractedText, $post, $title, $local, $wikiId ]
1956 return $this->container->run(
1964 return $this->container->run(
1965 'GetAllBlockActions',
1967 [
'abortable' =>
false ]
1973 return $this->container->run(
1974 'GetAutoPromoteGroups',
1975 [ $user, &$promote ]
1981 $this->container->run(
1983 [ $context, &$action ],
1984 [
'abortable' => false ]
1990 return $this->container->run(
1991 'GetCacheVaryCookies',
1998 return $this->container->run(
2000 [ $title, &
$url, $query ]
2006 return $this->container->run(
2014 return $this->container->run(
2015 'GetDefaultSortkey',
2016 [ $title, &$sortkey ]
2022 $unhide, &$differenceEngine
2024 return $this->container->run(
2025 'GetDifferenceEngine',
2026 [ $context, $old, $new, $refreshCache, $unhide,
2027 &$differenceEngine ]
2033 return $this->container->run(
2034 'GetDoubleUnderscoreIDs',
2035 [ &$doubleUnderscoreIDs ]
2041 $single, &$maxCacheTime
2043 return $this->container->run(
2044 'GetExtendedMetadata',
2045 [ &$combinedMeta, $file, $context, $single, &$maxCacheTime ]
2051 return $this->container->run(
2053 [ $title, &
$url, $query ]
2061 return $this->container->run(
2062 'GetHumanTimestamp',
2063 [ &$output, $timestamp, $relativeTo, $user, $lang ]
2069 return $this->container->run(
2071 [ $title, &
$url, $query ]
2077 return $this->container->run(
2085 return $this->container->run(
2086 'GetLangPreferredVariant',
2093 return $this->container->run(
2095 [ $linkcolour_ids, &$colours, $title ]
2101 return $this->container->run(
2103 [ $title, &
$url, $query ]
2109 return $this->container->run(
2110 'GetLocalURL::Article',
2117 return $this->container->run(
2118 'GetLocalURL::Internal',
2119 [ $title, &
$url, $query ]
2125 return $this->container->run(
2126 'GetLogTypesOnUser',
2133 return $this->container->run(
2134 'GetMagicVariableIDs',
2141 return $this->container->run(
2142 'GetMetadataVersion',
2151 return $this->container->run(
2152 'GetNewMessagesAlert',
2153 [ &$newMessagesAlert, $newtalks, $user, $out ]
2159 return $this->container->run(
2161 [ $user, &$preferences ]
2167 $relativeTo, $user, $lang
2169 return $this->container->run(
2170 'GetRelativeTimestamp',
2171 [ &$output, &$diff, $timestamp, $relativeTo, $user, $lang ]
2179 return $this->container->run(
2180 'GetSlotDiffRenderer',
2181 [ $contentHandler, &$slotDiffRenderer, $context ]
2187 return $this->container->run(
2189 [ $user, $ip, &$block ]
2201 $this->container->run(
2202 'PermissionStatusAudit',
2203 [ $title, $user, $action, $rigor, $status ],
2204 [
'abortable' => false ]
2210 $this->container->run(
2211 'GetSecurityLogContext',
2212 [ $info, &$context ],
2213 [
'abortable' => false ]
2219 $this->container->run(
2220 'GetSessionJwtData',
2221 [ $user, &$jwtData ],
2222 [
'abortable' => false ]
2228 return $this->container->run(
2229 'getUserPermissionsErrors',
2230 [ $title, $user, $action, &$result ]
2238 return $this->container->run(
2239 'getUserPermissionsErrorsExpensive',
2240 [ $title, $user, $action, &$result ]
2246 return $this->container->run(
2254 return $this->container->run(
2255 'HistoryPageToolLinks',
2256 [ $context, $linkRenderer, &$links ]
2261 public function onHistoryTools( $revRecord, &$links, $prevRevRecord, $userIdentity ) {
2262 return $this->container->run(
2264 [ $revRecord, &$links, $prevRevRecord, $userIdentity ]
2270 return $this->container->run(
2271 'HtmlCacheUpdaterAppendUrls',
2272 [ $title, $mode, &$append ]
2278 return $this->container->run(
2279 'HtmlCacheUpdaterVaryUrls',
2286 return $this->container->run(
2287 'HTMLFileCache::useFileCache',
2294 &$customAttribs, &$query, &$ret
2296 return $this->container->run(
2297 'HtmlPageLinkRendererBegin',
2298 [ $linkRenderer, $target, &$text, &$customAttribs, &$query, &$ret ]
2304 &$text, &$attribs, &$ret
2306 return $this->container->run(
2307 'HtmlPageLinkRendererEnd',
2308 [ $linkRenderer, $target, $isKnown, &$text, &$attribs, &$ret ]
2314 &$frameParams, &$handlerParams, &$time, &$res, $parser, &$query, &$widthOption
2316 return $this->container->run(
2317 'ImageBeforeProduceHTML',
2318 [ $linker, &$title, &$file, &$frameParams, &$handlerParams, &$time,
2319 &$res, $parser, &$query, &$widthOption ]
2325 return $this->container->run(
2326 'ImageOpenShowImageInlineBefore',
2327 [ $imagePage, $output ]
2333 return $this->container->run(
2334 'ImagePageAfterImageLinks',
2335 [ $imagePage, &$html ]
2341 return $this->container->run(
2342 'ImagePageFileHistoryLine',
2343 [ $imageHistoryList, $file, &$line, &$css ]
2349 return $this->container->run(
2350 'ImagePageFindFile',
2351 [ $page, &$file, &$displayFile ]
2357 return $this->container->run(
2365 return $this->container->run(
2366 'ImgAuthBeforeStream',
2367 [ &$title, &
$path, &$name, &$result ]
2373 return $this->container->run(
2374 'ImgAuthModifyHeaders',
2375 [ $title, &$headers ]
2381 return $this->container->run(
2382 'ImportHandleLogItemXMLTag',
2383 [ $reader, $logInfo ]
2389 return $this->container->run(
2390 'ImportHandlePageXMLTag',
2391 [ $reader, &$pageInfo ]
2399 return $this->container->run(
2400 'ImportHandleRevisionXMLTag',
2401 [ $reader, $pageInfo, $revisionInfo ]
2407 return $this->container->run(
2408 'ImportHandleContentXMLTag',
2409 [ $reader, $contentInfo ] );
2414 return $this->container->run(
2415 'ImportHandleToplevelXMLTag',
2422 return $this->container->run(
2423 'ImportHandleUnknownUser',
2430 return $this->container->run(
2431 'ImportHandleUploadXMLTag',
2432 [ $reader, $revisionInfo ]
2438 return $this->container->run(
2439 'ImportLogInterwikiLink',
2440 [ &$fullInterwikiPrefix, &$pageTitle ]
2446 return $this->container->run(
2454 return $this->container->run(
2456 [ $context, &$pageInfo ]
2462 &$ignoreRedirect, &$target, &$article
2464 return $this->container->run(
2465 'InitializeArticleMaybeRedirect',
2466 [ $title,
$request, &$ignoreRedirect, &$target, &$article ]
2472 return $this->container->run(
2473 'InternalParseBeforeLinks',
2474 [ $parser, &$text, $stripState ]
2480 return $this->container->run(
2481 'InterwikiLoadPrefix',
2482 [ $prefix, &$iwData ]
2488 return $this->container->run(
2489 'InvalidateEmailComplete',
2496 return $this->container->run(
2498 [ &
$url, &$query, $rc ]
2504 return $this->container->run(
2512 return $this->container->run(
2520 return $this->container->run(
2521 'IsUploadAllowedFromUrl',
2528 return $this->container->run(
2536 return $this->container->run(
2538 [ $password, &$result, $user ]
2544 return $this->container->run(
2546 [ $content, $pageIdentity, &$status ]
2552 return $this->container->run(
2553 'LanguageGetNamespaces',
2560 return $this->container->run(
2561 'LanguageGetTranslatedLanguageNames',
2568 return $this->container->run(
2570 [ $title, &$links, &$linkFlags ]
2576 return $this->container->run(
2578 [ $out, $cssClassName ]
2584 return $this->container->run(
2585 'Language::getMessagesFileName',
2592 return $this->container->run(
2593 'LinkerGenerateRollbackLink',
2594 [ $revRecord, $context, $options, &$inner ]
2600 return $this->container->run(
2601 'LinkerMakeExternalImage',
2602 [ &
$url, &$alt, &$img ]
2610 return $this->container->run(
2611 'LinkerMakeExternalLink',
2612 [ &
$url, &$text, &$link, &$attribs, $linkType ]
2618 ?
string &
$url,
string &$text, array &$attribs,
2619 string $linkType, ParsoidLinkTarget $contextTitle
2621 return $this->container->run(
2622 'LinkerMakeExternalLinkWithContext',
2623 [ &
$url, &$text, &$attribs, $linkType, $contextTitle ]
2631 return $this->container->run(
2632 'LinkerMakeMediaLinkFile',
2633 [ $title, $file, &$html, &$attribs, &$ret ]
2639 return $this->container->run(
2647 return $this->container->run(
2648 'LinksUpdateComplete',
2649 [ $linksUpdate, $ticket ]
2655 return $this->container->run(
2656 'LinkTargetIsAlwaysKnownBatch',
2657 [ $links, &$isAlwaysKnown ]
2663 return $this->container->run(
2671 $this->container->run(
2672 'ListRestrictedTags',
2673 [ &$restrictedTags ],
2674 [
'abortable' => false ]
2680 return $this->container->run(
2681 'LoadExtensionSchemaUpdates',
2683 [
'noServices' =>
true ]
2689 return $this->container->run(
2690 'LocalFilePurgeThumbnails',
2691 [ $file, $archiveName, $urls ]
2697 &$opts, &$join_conds
2699 return $this->container->run(
2700 'LocalFile::getHistory',
2701 [ $file, &$tables, &$fields, &$conds, &$opts, &$join_conds ]
2707 return $this->container->run(
2708 'LocalisationCacheRecache',
2709 [ $cache, $code, &$alldata, $unused ]
2715 return $this->container->run(
2716 'LocalisationCacheRecacheFallback',
2717 [ $cache, $code, &$alldata ]
2723 return $this->container->run(
2725 [ $user, $autocreated ]
2733 return $this->container->run(
2734 'LogEventsListGetExtraInputs',
2735 [ $type, $logEventsList, &$input, &$formDescriptor ]
2743 return $this->container->run(
2744 'LogEventsListLineEnding',
2745 [ $page, &$ret, $entry, &$classes, &$attribs ]
2753 return $this->container->run(
2754 'LogEventsListShowLogExtract',
2755 [ &$s, $types, $page, $user, $param ]
2761 return $this->container->run(
2769 return $this->container->run(
2770 'LoginFormValidErrorMessages',
2776 public function onLogLine( $log_type, $log_action, $title, $paramArray,
2777 &$comment, &$revert, $time
2779 return $this->container->run(
2781 [ $log_type, $log_action, $title, $paramArray, &$comment,
2788 return $this->container->run(
2790 [ &$tables, &$conds, &$joinConds ]
2796 return $this->container->run(
2797 'MaintenanceRefreshLinksInit',
2804 $this->container->run(
2805 'MaintenanceShellStart',
2807 [
'abortable' => false ]
2813 return $this->container->run(
2814 'MaintenanceUpdateAddParams',
2821 $this->container->run(
2822 'MakeGlobalVariablesScript',
2824 [
'abortable' => false ]
2830 $this->container->run(
2831 'ManualLogEntryBeforePublish',
2833 [
'abortable' => false ]
2841 return $this->container->run(
2843 [ $rcid, $user, $wcOnlySysopsCanPatrol, $auto, &$tags ]
2851 return $this->container->run(
2852 'MarkPatrolledComplete',
2853 [ $rcid, $user, $wcOnlySysopsCanPatrol, $auto ]
2859 $this->container->run(
2860 'MarkPatrolledAudit',
2861 [ $recentChange, $userIdentity, $logId ],
2862 [
'abortable' => false ]
2870 return $this->container->run(
2871 'MediaWikiPerformAction',
2872 [ $output, $article, $title, $user,
$request, $mediaWiki ]
2878 return $this->container->run(
2879 'MediaWikiServices',
2881 [
'noServices' =>
true ]
2887 $this->container->run(
2888 'MessageCacheFetchOverrides',
2890 [
'abortable' => false ]
2896 return $this->container->run(
2897 'MessageCacheReplace',
2904 return $this->container->run(
2905 'MessageCache::get',
2912 $this->container->run(
2913 'MessagePostProcessHtml',
2914 [ &$value, $format, $key ],
2915 [
'abortable' => false ]
2921 $this->container->run(
2922 'MessagePostProcessText',
2923 [ &$value, $format, $key ],
2924 [
'abortable' => false ]
2930 return $this->container->run(
2932 [ $title, &$message, $code ]
2940 return $this->container->run(
2941 'MimeMagicGuessFromContent',
2942 [ $mimeMagic, &$head, &$tail, $file, &$mime ]
2948 return $this->container->run(
2949 'MimeMagicImproveFromExtension',
2950 [ $mimeMagic, $ext, &$mime ]
2956 return $this->container->run(
2964 return $this->container->run(
2965 'GetBlockErrorMessageKey',
2972 &$join_conds, &$conds
2974 return $this->container->run(
2975 'ModifyExportQuery',
2976 [ $db, &$tables, $cond, &$opts, &$join_conds, &$conds ]
2984 return $this->container->run(
2985 'MovePageCheckPermissions',
2986 [ $oldTitle, $newTitle, $user, $reason, $status ]
2992 return $this->container->run(
2993 'MovePageIsValidMove',
2994 [ $oldTitle, $newTitle, $status ]
3002 return $this->container->run(
3004 [ $renderedRevision, $user, $summary, $flags, $status ]
3010 return $this->container->run(
3011 'NamespaceIsMovable',
3012 [ $index, &$result ]
3018 return $this->container->run(
3019 'NewDifferenceEngine',
3020 [ $title, &$oldId, &$newId, $old, $new ]
3026 return $this->container->run(
3027 'NewPagesLineEnding',
3028 [ $page, &$ret, $row, &$classes, &$attribs ]
3034 &$classes, &$attribs
3036 return $this->container->run(
3037 'OldChangesListRecentChangesLine',
3038 [ $changeslist, &$s, $rc, &$classes, &$attribs ]
3044 return $this->container->run(
3052 return $this->container->run(
3053 'OpportunisticLinksUpdate',
3054 [ $page, $title, $parserOutput ]
3060 return $this->container->run(
3061 'OtherAutoblockLogLink',
3062 [ &$otherBlockLink ]
3068 return $this->container->run(
3069 'OtherBlockLogLink',
3070 [ &$otherBlockLink, $ip ]
3076 return $this->container->run(
3077 'OutputPageAfterGetHeadLinksArray',
3084 return $this->container->run(
3085 'OutputPageBeforeHTML',
3092 $this->container->run(
3093 'OutputPageBodyAttributes',
3094 [ $out, $sk, &$bodyAttrs ],
3095 [
'abortable' => false ]
3101 return $this->container->run(
3102 'OutputPageCheckLastModified',
3103 [ &$modifiedTimes, $out ]
3109 $this->container->run(
3110 'OutputPageParserOutput',
3111 [ $outputPage, $parserOutput ],
3112 [
'abortable' => false ]
3123 $this->container->run(
3124 'OutputPageRenderCategoryLink',
3125 [ $outputPage, $categoryTitle, $text, &$link ],
3126 [
'abortable' => false ]
3134 $this->container->run(
3135 'OutputTransformFirstStage',
3136 [ &$parserOutput, $parserOptions ],
3137 [
'abortable' => false ]
3145 $this->container->run(
3146 'OutputTransformLastStage',
3147 [ &$parserOutput, $parserOptions ],
3148 [
'abortable' => false ]
3154 return $this->container->run(
3155 'PageContentLanguage',
3156 [ $title, &$pageLang, $userLang ]
3168 return $this->container->run(
3170 [ $page, $deleter, $reason, $status, $suppress ]
3182 int $archivedRevisionCount
3184 return $this->container->run(
3185 'PageDeleteComplete',
3186 [ $page, $deleter, $reason, $pageID, $deletedRev, $logEntry, $archivedRevisionCount ]
3192 return $this->container->run(
3193 'PageDeletionDataUpdates',
3194 [ $title, $revision, &$updates ]
3205 array $fileVersions,
3208 return $this->container->run(
3210 [ $page, $performer, $reason, $unsuppress, $timestamps, $fileVersions, $status ]
3221 int $restoredRevisionCount,
3223 array $restoredPageIds
3225 $this->container->run(
3226 'PageUndeleteComplete',
3233 $restoredRevisionCount,
3237 [
'abortable' => false ]
3243 return $this->container->run(
3244 'PageHistoryBeforeList',
3245 [ $article, $context ]
3253 return $this->container->run(
3254 'PageHistoryLineEnding',
3255 [ $historyAction, &$row, &$s, &$classes, &$attribs ]
3261 return $this->container->run(
3262 'PageHistoryPager::doBatchLookups',
3269 return $this->container->run(
3270 'PageHistoryPager::getQueryInfo',
3271 [ $pager, &$queryInfo ]
3277 return $this->container->run(
3279 [ $old, $new, $user, $pageid, $redirid, $reason, $revision ]
3285 return $this->container->run(
3286 'PageMoveCompleting',
3287 [ $old, $new, $user, $pageid, $redirid, $reason, $revision ]
3293 return $this->container->run(
3294 'PageRenderingHash',
3295 [ &$confstr, $user, &$forOptions ]
3301 $revisionRecord, $editResult
3303 return $this->container->run(
3305 [ $wikiPage, $user, $summary, $flags, $revisionRecord, $editResult ]
3311 return $this->container->run(
3313 [ $wikipage, $user ]
3319 return $this->container->run(
3321 [ $parser, &$text, $stripState ]
3327 return $this->container->run(
3335 return $this->container->run(
3336 'ParserBeforeInternalParse',
3337 [ $parser, &$text, $stripState ]
3343 return $this->container->run(
3344 'ParserBeforePreprocess',
3345 [ $parser, &$text, $stripState ]
3353 return $this->container->run(
3354 'ParserCacheSaveComplete',
3355 [ $parserCache, $parserOutput, $title, $popts, $revId ]
3361 return $this->container->run(
3369 return $this->container->run(
3377 return $this->container->run(
3378 'ParserFetchTemplateData',
3379 [ $titles, &$tplData ]
3385 return $this->container->run(
3386 'ParserFirstCallInit',
3393 $magicWordId, &$ret, $frame
3395 return $this->container->run(
3396 'ParserGetVariableValueSwitch',
3397 [ $parser, &$variableCache, $magicWordId, &$ret, $frame ]
3403 return $this->container->run(
3404 'ParserGetVariableValueTs',
3413 return $this->container->run(
3414 'ParserLimitReportFormat',
3415 [ $key, &$value, &$report, $isHTML, $localize ]
3421 return $this->container->run(
3422 'ParserLimitReportPrepare',
3423 [ $parser, $output ]
3429 return $this->container->run(
3430 'ParserLogLinterData',
3431 [ $title, $revId, $lints ]
3437 return $this->container->run(
3438 'ParserMakeImageParams',
3439 [ $title, $file, &$params, $parser ]
3445 array $params,
string &$html
3447 $this->container->run(
3448 'ParserModifyImageHTML',
3449 [ $parser, $file, $params, &$html ],
3450 [
'abortable' => false ]
3456 return $this->container->run(
3457 'ParserOptionsDefaults',
3458 [ &$defaults, &$inCacheKey, &$lazyLoad, &$postprocOpts ]
3464 return $this->container->run(
3465 'ParserOptionsRegister',
3466 [ &$defaults, &$inCacheKey, &$lazyLoad ]
3474 $this->container->run(
3475 'ParserOutputPostCacheTransform',
3476 [ $parserOutput, &$text, &$options ],
3477 [
'abortable' => false ]
3485 return $this->container->run(
3486 'ParserOutputStashForEdit',
3487 [ $page, $content, $output, $summary, $user ]
3493 return $this->container->run(
3494 'ParserPreSaveTransformComplete',
3501 return $this->container->run(
3502 'ParserTestGlobals',
3509 return $this->container->run(
3510 'PasswordPoliciesForUser',
3511 [ $user, &$effectivePolicy ]
3517 return $this->container->run(
3518 'PerformRetroactiveAutoblock',
3519 [ $block, &$blockIds ]
3525 return $this->container->run(
3527 [ $user, $action, &$result, $incrBy ]
3533 return $this->container->run(
3535 [ $content, $oldtext, $subject, &$text ]
3541 return $this->container->run(
3542 'PostLoginRedirect',
3543 [ &$returnTo, &$returnToQuery, &$type ]
3551 return $this->container->run(
3552 'PreferencesFormPreSave',
3553 [ $formData, $form, $user, &$result, $oldUserOptions ]
3559 return $this->container->run(
3560 'PreferencesGetIcon',
3567 $skinProperties = []
3569 return $this->container->run(
3570 'PreferencesGetLayout',
3571 [ &$useMobileLayout, $skinName, $skinProperties ]
3577 return $this->container->run(
3578 'PreferencesGetLegend',
3579 [ $form, $key, &$legend ]
3585 return $this->container->run(
3586 'PrefixSearchExtractNamespace',
3587 [ &$namespaces, &$search ]
3593 return $this->container->run(
3595 [ $user, $oldaddr, $newaddr ]
3601 return $this->container->run(
3602 'ProtectionForm::buildForm',
3603 [ $article, &$output ]
3609 return $this->container->run(
3610 'ProtectionFormAddFormFields',
3611 [ $article, &$hookFormOptions ]
3617 return $this->container->run(
3618 'ProtectionForm::save',
3619 [ $article, &$errorMsg, $reasonstr ]
3625 return $this->container->run(
3626 'ProtectionForm::showLogExtract',
3633 return $this->container->run(
3635 [ &$tables, &$conds, &$joinConds ]
3641 return $this->container->run(
3642 'RawPageViewBeforeOutput',
3653 $this->container->run(
3654 'ReadPrivateUserRequirementsCondition',
3655 [ $performer, $target, $conditions ],
3656 [
'abortable' => false ]
3662 $this->container->run(
3663 'RecentChangesPurgeRows',
3670 $this->container->run(
3671 'RecentChangesPurgeQuery',
3672 [ $query, &$callbacks ]
3678 return $this->container->run(
3679 'RecentChange_save',
3686 return $this->container->run(
3687 'RedirectSpecialArticleRedirectParams',
3688 [ &$redirectParams ]
3696 return $this->container->run(
3697 'RejectParserCacheValue',
3698 [ $parserOutput, $wikiPage, $parserOptions ]
3704 return $this->container->run(
3706 [ $uid, $old, $new ]
3712 $this->container->run(
3713 'RenameUserComplete',
3714 [ $uid, $old, $new ],
3715 [
'abortable' => false ]
3721 $this->container->run(
3722 'RenameUserPreRename',
3723 [ $uid, $old, $new ],
3724 [
'abortable' => false ]
3730 $this->container->run(
3733 [
'abortable' => false ]
3739 $this->container->run(
3740 'RenameUserWarning',
3741 [ $oldUsername, $newUsername, &$warnings ],
3742 [
'abortable' => false ]
3748 return $this->container->run(
3749 'RequestContextCreateSkin',
3750 [ $context, &$skin ]
3756 return $this->container->run(
3757 'ResetPasswordExpiration',
3758 [ $user, &$newExpire ]
3764 return $this->container->run(
3765 'RevisionDataUpdates',
3766 [ $title, $renderedRevision, &$updates ]
3772 return $this->container->run(
3773 'RevisionFromEditComplete',
3774 [ $wikiPage, $rev, $originalRevId, $user, &$tags ]
3780 return $this->container->run(
3781 'RevisionRecordInserted',
3788 return $this->container->run(
3789 'RevisionUndeleted',
3790 [ $revisionRecord, $oldPageID ]
3796 return $this->container->run(
3798 [ $wikiPage, $user, $revision, $current ]
3804 return $this->container->run(
3805 'SearchableNamespaces',
3812 return $this->container->run(
3813 'SearchAfterNoDirectMatch',
3820 return $this->container->run(
3821 'SearchDataForIndex',
3822 [ &$fields, $handler, $page, $output, $engine ]
3830 return $this->container->run(
3831 'SearchDataForIndex2',
3832 [ &$fields, $handler, $page, $output, $engine, $revision ]
3838 return $this->container->run(
3839 'SearchGetNearMatch',
3846 return $this->container->run(
3847 'SearchGetNearMatchBefore',
3848 [ $allSearchTerms, &$titleResult ]
3854 return $this->container->run(
3855 'SearchGetNearMatchComplete',
3862 return $this->container->run(
3863 'SearchIndexFields',
3864 [ &$fields, $engine ]
3870 return $this->container->run(
3871 'SearchResultInitFromTitle',
3878 return $this->container->run(
3879 'SearchResultProvideDescription',
3880 [ $pageIdentities, &$descriptions ]
3886 return $this->container->run(
3887 'SearchResultProvideThumbnail',
3888 [ $pageIdentities, &$thumbnails, $size ]
3894 return $this->container->run(
3895 'SearchResultsAugment',
3896 [ &$setAugmentors, &$rowAugmentors ]
3902 $session, $timeSinceAuth
3904 return $this->container->run(
3905 'SecuritySensitiveOperationStatus',
3906 [ &$status, $operation, $session, $timeSinceAuth ]
3912 return $this->container->run(
3914 [ $nt, &$html, &$trail, &$prefix, &$ret ]
3922 return $this->container->run(
3924 [ &$reason, $info,
$request, $metadata, $data ]
3930 return $this->container->run(
3932 [ $backend, &$metadata, $requests ]
3938 return $this->container->run(
3946 return $this->container->run(
3948 [ &$tables, &$conds, &$joinConds, &$options ]
3954 return $this->container->run(
3955 'ShowMissingArticle',
3962 &$redirect, &$section, &$extract, &$score, &$size, &$date, &$related, &$html
3964 return $this->container->run(
3966 [ $searchPage, $result, $terms, &$link, &$redirect, &$section,
3967 &$extract, &$score, &$size, &$date, &$related, &$html ]
3973 $specialSearch, &$query, &$attributes
3975 return $this->container->run(
3976 'ShowSearchHitTitle',
3977 [ &$title, &$titleSnippet, $result, $terms, $specialSearch,
3978 &$query, &$attributes ]
3984 $this->container->run(
3985 'SidebarBeforeOutput',
3986 [ $skin, &$sidebar ],
3987 [
'abortable' => false ]
3993 return $this->container->run(
3995 [ &$siteNotice, $skin ]
4001 return $this->container->run(
4003 [ &$siteNotice, $skin ]
4011 $this->container->run(
4012 'SkinPageReadyConfig',
4013 [ $context, &$config ],
4014 [
'abortable' =>
true ]
4020 $this->container->run(
4021 'SkinAddFooterLinks',
4022 [ $skin, $key, &$footerItems ]
4028 return $this->container->run(
4029 'SkinAfterBottomScripts',
4036 return $this->container->run(
4044 return $this->container->run(
4046 [ $skin, $portlet, &$html ]
4052 return $this->container->run(
4060 return $this->container->run(
4061 'SkinCopyrightFooterMessage',
4062 [ $title, $type, &$msg ]
4070 return $this->container->run(
4071 'SkinEditSectionLinks',
4072 [ $skin, $title, $section, $tooltip, &$result, $lang ]
4078 return $this->container->run(
4079 'SkinPreloadExistence',
4086 return $this->container->run(
4087 'SkinSubPageSubtitle',
4088 [ &$subpages, $skin, $out ]
4094 $languageLinkTitle, $title, $outputPage
4096 return $this->container->run(
4097 'SkinTemplateGetLanguageLink',
4098 [ &$languageLink, $languageLinkTitle, $title, $outputPage ]
4104 $this->container->run(
4105 'SkinTemplateNavigation::Universal',
4106 [ $sktemplate, &$links ],
4107 [
'abortable' => false ]
4113 return $this->container->run(
4121 return $this->container->run(
4122 'SpecialBlockModifyFormFields',
4129 return $this->container->run(
4130 'SpecialContributionsBeforeMainOutput',
4139 return $this->container->run(
4140 'SpecialContributions::formatRow::flags',
4141 [ $context, $row, &$flags ]
4147 return $this->container->run(
4148 'SpecialContributions::getForm::filters',
4155 return $this->container->run(
4156 'SpecialCreateAccountBenefits',
4157 [ &$html, $info, &$options ]
4163 return $this->container->run(
4164 'SpecialExportGetExtraPages',
4165 [ $inputPages, &$extraPages ]
4171 return $this->container->run(
4172 'SpecialListusersDefaultQuery',
4179 return $this->container->run(
4180 'SpecialListusersFormatRow',
4187 return $this->container->run(
4188 'SpecialListusersHeader',
4195 return $this->container->run(
4196 'SpecialListusersHeaderForm',
4203 return $this->container->run(
4204 'SpecialListusersQueryInfo',
4211 return $this->container->run(
4212 'SpecialLogAddLogSearchRelations',
4222 $this->container->run(
4223 'SpecialLogResolveLogType',
4224 [ $params, &$type ],
4225 [
'abortable' => false ]
4234 $this->container->run(
4235 'SpecialLogGetSubpagesForPrefixSearch',
4236 [ $context, &$subpages ],
4237 [
'abortable' => false ]
4243 return $this->container->run(
4244 'SpecialMovepageAfterMove',
4245 [ $movePage, $oldTitle, $newTitle ]
4251 return $this->container->run(
4252 'SpecialMuteModifyFormFields',
4253 [ $target, $user, &$fields ]
4259 &$tables, &$fields, &$join_conds
4261 return $this->container->run(
4262 'SpecialNewpagesConditions',
4263 [ $special, $opts, &$conds, &$tables, &$fields, &$join_conds ]
4269 return $this->container->run(
4270 'SpecialNewPagesFilters',
4271 [ $special, &$filters ]
4277 return $this->container->run(
4278 'SpecialPageAfterExecute',
4279 [ $special, $subPage ]
4285 return $this->container->run(
4286 'SpecialPageBeforeExecute',
4287 [ $special, $subPage ]
4293 return $this->container->run(
4294 'SpecialPageBeforeFormDisplay',
4301 return $this->container->run(
4302 'SpecialPage_initList',
4309 return $this->container->run(
4310 'SpecialPasswordResetOnSubmit',
4311 [ &$users, $data, &$error ]
4317 $this->container->run(
4318 'SpecialPrefixIndexGetFormFilters',
4319 [ $contextSource, &$filters ],
4320 [
'abortable' =>
false ]
4326 $this->container->run(
4327 'SpecialPrefixIndexQuery',
4328 [ $fieldData, $queryBuilder ],
4329 [
'abortable' =>
false ]
4335 &$namespaces, &$extra, &$title
4337 return $this->container->run(
4338 'SpecialRandomGetRandomTitle',
4339 [ &$randstr, &$isRedir, &$namespaces, &$extra, &$title ]
4345 return $this->container->run(
4346 'SpecialRecentChangesPanel',
4347 [ &$extraOpts, $opts ]
4353 return $this->container->run(
4354 'SpecialResetTokensTokens',
4361 return $this->container->run(
4362 'SpecialSearchCreateLink',
4369 return $this->container->run(
4370 'SpecialSearchGoResult',
4371 [ $term, $title, &
$url ]
4377 return $this->container->run(
4378 'SpecialSearchNogomatch',
4385 return $this->container->run(
4386 'SpecialSearchPowerBox',
4387 [ &$showSections, $term, &$opts ]
4395 return $this->container->run(
4396 'SpecialSearchProfileForm',
4397 [ $search, &$form, $profile, $term, $opts ]
4403 return $this->container->run(
4404 'SpecialSearchProfiles',
4411 return $this->container->run(
4412 'SpecialSearchResults',
4413 [ $term, &$titleMatches, &$textMatches ]
4419 return $this->container->run(
4420 'SpecialSearchResultsAppend',
4421 [ $specialSearch, $output, $term ]
4427 return $this->container->run(
4428 'SpecialSearchResultsPrepend',
4429 [ $specialSearch, $output, $term ]
4435 return $this->container->run(
4436 'SpecialSearchSetupEngine',
4437 [ $search, $profile, $engine ]
4443 return $this->container->run(
4444 'SpecialStatsAddExtra',
4445 [ &$extraStats, $context ]
4453 return $this->container->run(
4454 'SpecialTrackingCategories::generateCatLink',
4455 [ $specialPage, $catTitle, &$html ]
4463 return $this->container->run(
4464 'SpecialTrackingCategories::preprocess',
4465 [ $specialPage, $trackingCategories ]
4471 return $this->container->run(
4472 'SpecialUploadComplete',
4479 return $this->container->run(
4480 'SpecialVersionVersionUrl',
4481 [ $version, &$versionUrl ]
4487 return $this->container->run(
4488 'SpreadAnyEditBlock',
4489 [ $user, &$blockWasSpread ]
4495 $this->container->run(
4496 'SpecialWhatLinksHereQuery',
4497 [ $table, $data, $queryBuilder ],
4498 [
'abortable' => false ]
4507 string $returnToQuery,
4508 string $returnToAnchor,
4511 return $this->container->run(
4512 'TempUserCreatedRedirect',
4513 [ $session, $user, $returnTo, $returnToQuery, $returnToAnchor, &$redirectUrl ]
4519 return $this->container->run(
4520 'TestCanonicalRedirect',
4529 return $this->container->run(
4530 'ThumbnailBeforeProduceHTML',
4531 [ $thumbnail, &$attribs, &$linkAttribs ]
4537 return $this->container->run(
4539 [ $title, &$exists ]
4545 return $this->container->run(
4546 'TitleGetEditNotices',
4547 [ $title, $oldid, &$notices ]
4553 return $this->container->run(
4554 'TitleGetRestrictionTypes',
4561 return $this->container->run(
4562 'TitleIsAlwaysKnown',
4563 [ $title, &$isKnown ]
4569 return $this->container->run(
4571 [ $title, &$result ]
4577 return $this->container->run(
4579 [ $old, $nt, $user, $reason, &$status ]
4585 return $this->container->run(
4586 'TitleMoveStarting',
4587 [ $old, $nt, $user ]
4593 $doExpensiveQueries, $short
4595 return $this->container->run(
4596 'TitleQuickPermissions',
4597 [ $title, $user, $action, &$errors, $doExpensiveQueries, $short ]
4603 return $this->container->run(
4604 'TitleReadWhitelist',
4605 [ $title, $user, &$allowed ]
4611 return $this->container->run(
4619 return $this->container->run(
4621 [ $block, $user, &$reason ]
4627 return $this->container->run(
4628 'UnblockUserComplete',
4635 return $this->container->run(
4636 'UndeleteForm::showHistory',
4637 [ &$archive, $title ]
4643 return $this->container->run(
4644 'UndeleteForm::showRevision',
4645 [ &$archive, $title ]
4651 return $this->container->run(
4652 'UndeletePageToolLinks',
4653 [ $context, $linkRenderer, &$links ]
4659 return $this->container->run(
4660 'UnitTestsAfterDatabaseSetup',
4661 [ $database, $prefix ]
4667 return $this->container->run(
4668 'UnitTestsBeforeDatabaseTeardown',
4675 return $this->container->run(
4683 return $this->container->run(
4685 [ $user, $page, &$status ]
4691 return $this->container->run(
4692 'UnwatchArticleComplete',
4699 return $this->container->run(
4707 return $this->container->run(
4708 'UploadCreateFromRequest',
4709 [ $type, &$className ]
4715 return $this->container->run(
4716 'UploadFormInitDescriptor',
4725 return $this->container->run(
4726 'UploadFormSourceDescriptors',
4727 [ &$descriptor, &$radio, $selectedSourceType ]
4733 return $this->container->run(
4734 'UploadForm:BeforeProcessing',
4741 return $this->container->run(
4742 'UploadForm:getInitialPageText',
4743 [ &$pageText, $msg, $config ]
4749 return $this->container->run(
4750 'UploadForm:initial',
4757 return $this->container->run(
4759 [ $upload, $user, $props, &$error ]
4765 return $this->container->run(
4767 [ $upload, $mime, &$error ]
4775 return $this->container->run(
4776 'UploadVerifyUpload',
4777 [ $upload, $user, $props, $comment, $pageText, &$error ]
4783 return $this->container->run(
4785 [ $user, &$group, &$expiry ]
4791 return $this->container->run(
4792 'UserArrayFromResult',
4793 [ &$userArray, $res ]
4798 public function onUserCan( $title, $user, $action, &$result ) {
4799 return $this->container->run(
4801 [ $title, $user, $action, &$result ]
4807 return $this->container->run(
4808 'UserCanChangeEmail',
4809 [ $user, $oldaddr, $newaddr, &$status ]
4815 return $this->container->run(
4817 [ $user, &$hookErr ]
4823 return $this->container->run(
4824 'UserClearNewTalkNotification',
4825 [ $userIdentity, $oldid ]
4831 $this->container->run(
4832 'UserEditCountUpdate',
4834 [
'abortable' => false ]
4840 return $this->container->run(
4841 'UserEffectiveGroups',
4848 return $this->container->run(
4856 return $this->container->run(
4857 'UserGetDefaultOptions',
4858 [ &$defaultOptions ]
4864 return $this->container->run(
4872 return $this->container->run(
4873 'UserGetEmailAuthenticationTimestamp',
4874 [ $user, &$timestamp ]
4880 return $this->container->run(
4881 'UserGetLanguageObject',
4882 [ $user, &$code, $context ]
4888 return $this->container->run(
4889 'UserPrivilegedGroups',
4890 [ $userIdentity, &$groups ]
4896 return $this->container->run(
4897 'UserGetReservedNames',
4898 [ &$reservedUsernames ]
4904 return $this->container->run(
4912 return $this->container->run(
4913 'UserGetRightsRemove',
4920 $reason, $oldUGMs, $newUGMs
4922 return $this->container->run(
4923 'UserGroupsChanged',
4924 [ $user, $added, $removed, $performer, $reason, $oldUGMs,
4931 return $this->container->run(
4932 'UserIsBlockedFrom',
4933 [ $user, $title, &$blocked, &$allowUsertalk ]
4939 return $this->container->run(
4947 return $this->container->run(
4948 'UserIsEveryoneAllowed',
4955 return $this->container->run(
4965 return $this->container->run(
4966 'UserLinkRendererUserLinkPostRender',
4967 [ $targetUser, $context, &$html, &$prefix, &$postfix ]
4973 return $this->container->run(
4974 'UserLoadAfterLoadFromSession',
4981 return $this->container->run(
4989 $this->container->run(
4991 [ $user, &$options ],
4992 [
'abortable' => false ]
4998 return $this->container->run(
5006 return $this->container->run(
5007 'UserLoginComplete',
5008 [ $user, &$inject_html, $direct ]
5014 return $this->container->run(
5023 $this->container->run(
5024 'UserModifyCreateAccountEmail',
5025 [ $user, $performer, &$subject, &$body ],
5026 [
'abortable' => false ]
5032 return $this->container->run(
5033 'UserLogoutComplete',
5034 [ $user, &$inject_html, $oldName ]
5040 return $this->container->run(
5041 'UserMailerChangeReturnPath',
5042 [ $to, &$returnPath ]
5048 return $this->container->run(
5049 'UserMailerSplitTo',
5056 return $this->container->run(
5057 'UserMailerTransformContent',
5058 [ $to, $from, &$body, &$error ]
5066 return $this->container->run(
5067 'UserMailerTransformMessage',
5068 [ $to, $from, &$subject, &$headers, &$body, &$error ]
5074 return $this->container->run(
5082 bool $isPerformingRequest, ?
bool &$result
5084 $this->container->run(
5085 'UserRequirementsCondition',
5086 [ $type, $args, $user, $isPerformingRequest, &$result ],
5087 [
'abortable' => false ]
5095 $this->container->run(
5096 'UserRequirementsConditionDisplay',
5097 [ $type, $args, $context, &$messageSpec ],
5098 [
'abortable' => false ]
5104 return $this->container->run(
5106 [ $user, &$modifiedOptions, $originalOptions ]
5112 $this->container->run(
5113 'LocalUserOptionsStoreSave',
5114 [ $user, $oldOptions, $newOptions ],
5115 [
'abortable' => false ]
5121 return $this->container->run(
5129 return $this->container->run(
5130 'UserSendConfirmationMail',
5131 [ $user, &$mail, $info ]
5137 return $this->container->run(
5145 return $this->container->run(
5146 'UserSetEmailAuthenticationTimestamp',
5147 [ $user, &$timestamp ]
5153 return $this->container->run(
5154 'UsersPagerDoBatchLookups',
5155 [ $dbr, $userIds, &$cache, &$groups ]
5161 return $this->container->run(
5162 'UserToolLinksEdit',
5163 [ $userId, $userText, &$items ]
5169 return $this->container->run(
5170 'User::mailPasswordInternal',
5177 return $this->container->run(
5178 'ValidateExtendedMetadataCache',
5179 [ $timestamp, $file ]
5185 return $this->container->run(
5186 'WantedPages::getQueryInfo',
5187 [ $wantedPages, &$query ]
5193 return $this->container->run(
5195 [ $user, $page, &$status, $expiry ]
5201 return $this->container->run(
5202 'WatchArticleComplete',
5209 $watchedItemQueryService
5211 return $this->container->run(
5212 'WatchedItemQueryServiceExtensions',
5213 [ &$extensions, $watchedItemQueryService ]
5219 return $this->container->run(
5220 'WatchlistEditorBeforeFormRender',
5229 return $this->container->run(
5230 'WatchlistEditorBuildRemoveLine',
5231 [ &$tools, $title, $redirect, $skin, &$link ]
5237 return $this->container->run(
5238 'WebRequestPathInfoRouter',
5245 return $this->container->run(
5246 'WebResponseSetCookie',
5247 [ &$name, &$value, &$expire, &$options ]
5253 return $this->container->run(
5255 [ &$script, &$parameters, &$options ]
5261 return $this->container->run(
5269 return $this->container->run(
5270 'WhatLinksHereProps',
5271 [ $row, $title, $target, &$props ]
5277 return $this->container->run(
5278 'WikiExporter::dumpStableQuery',
5279 [ &$tables, &$opts, &$join ]
5285 return $this->container->run(
5286 'WikiPageDeletionUpdates',
5287 [ $page, $content, &$updates ]
5293 return $this->container->run(
5301 return $this->container->run(
5302 'XmlDumpWriterOpenPage',
5303 [ $obj, &$out, $row, $title ]
5309 return $this->container->run(
5310 'XmlDumpWriterWriteRevision',
5311 [ $obj, &$out, $row, $text, $rev ]
Base class for content handling.
JSON text content that can be viewed and edit directly by users.
Renders a slot diff by doing a text diff on the native representation.
Class for creating new log entries and inserting them into the database.
This is one of the Core classes and should be read at least once by any new developers.
Legacy class representing an editable page and handling UI for some page actions.
Base representation for an editable wiki page.
Parent class for all special pages.
Generic operation result class Has warning/error list, boolean status and arbitrary value.
return[ 'config-schema-inverse'=>['default'=>['ConfigRegistry'=>['main'=> 'MediaWiki\\Config\\GlobalVarConfig::newInstance',], 'Sitename'=> 'MediaWiki', 'Server'=> false, 'CanonicalServer'=> false, 'ServerName'=> false, 'AssumeProxiesUseDefaultProtocolPorts'=> true, 'HttpsPort'=> 443, 'ForceHTTPS'=> false, 'ScriptPath'=> '/wiki', 'UsePathInfo'=> null, 'Script'=> false, 'LoadScript'=> false, 'RestPath'=> false, 'StylePath'=> false, 'LocalStylePath'=> false, 'ExtensionAssetsPath'=> false, 'ExtensionDirectory'=> null, 'StyleDirectory'=> null, 'ArticlePath'=> false, 'UploadPath'=> false, 'ImgAuthPath'=> false, 'ThumbPath'=> false, 'UploadDirectory'=> false, 'FileCacheDirectory'=> false, 'Logo'=> false, 'Logos'=> false, 'Favicon'=> '/favicon.ico', 'AppleTouchIcon'=> false, 'ReferrerPolicy'=> false, 'TmpDirectory'=> false, 'UploadBaseUrl'=> '', 'UploadStashScalerBaseUrl'=> false, 'ActionPaths'=>[], 'MainPageIsDomainRoot'=> false, 'EnableUploads'=> false, 'UploadStashMaxAge'=> 21600, 'EnableAsyncUploads'=> false, 'EnableAsyncUploadsByURL'=> false, 'UploadMaintenance'=> false, 'IllegalFileChars'=> ':\\/\\\\', 'DeletedDirectory'=> false, 'ImgAuthDetails'=> false, 'ImgAuthUrlPathMap'=>[], 'LocalFileRepo'=>['class'=> 'MediaWiki\\FileRepo\\LocalRepo', 'name'=> 'local', 'directory'=> null, 'scriptDirUrl'=> null, 'favicon'=> null, 'url'=> null, 'hashLevels'=> null, 'thumbScriptUrl'=> null, 'transformVia404'=> null, 'deletedDir'=> null, 'deletedHashLevels'=> null, 'updateCompatibleMetadata'=> null, 'reserializeMetadata'=> null,], 'ForeignFileRepos'=>[], 'UseInstantCommons'=> false, 'UseSharedUploads'=> false, 'SharedUploadDirectory'=> null, 'SharedUploadPath'=> null, 'HashedSharedUploadDirectory'=> true, 'RepositoryBaseUrl'=> 'https:'FetchCommonsDescriptions'=> false, 'SharedUploadDBname'=> false, 'SharedUploadDBprefix'=> '', 'CacheSharedUploads'=> true, 'ForeignUploadTargets'=>['local',], 'UploadDialog'=>['fields'=>['description'=> true, 'date'=> false, 'categories'=> false,], 'licensemessages'=>['local'=> 'generic-local', 'foreign'=> 'generic-foreign',], 'comment'=>['local'=> '', 'foreign'=> '',], 'format'=>['filepage'=> ' $DESCRIPTION', 'description'=> ' $TEXT', 'ownwork'=> '', 'license'=> '', 'uncategorized'=> '',],], 'FileBackends'=>[], 'LockManagers'=>[], 'DefaultLockManager'=> null, 'ShowEXIF'=> null, 'UpdateCompatibleMetadata'=> false, 'AllowCopyUploads'=> false, 'CopyUploadsDomains'=>[], 'CopyUploadsFromSpecialUpload'=> false, 'CopyUploadProxy'=> false, 'CopyUploadTimeout'=> false, 'CopyUploadAllowOnWikiDomainConfig'=> false, 'MaxUploadSize'=> 104857600, 'MinUploadChunkSize'=> 1024, 'UploadNavigationUrl'=> false, 'UploadMissingFileUrl'=> false, 'ThumbnailScriptPath'=> false, 'SharedThumbnailScriptPath'=> false, 'HashedUploadDirectory'=> true, 'CSPUploadEntryPoint'=> true, 'FileExtensions'=>['png', 'gif', 'jpg', 'jpeg', 'webp',], 'ProhibitedFileExtensions'=>['html', 'htm', 'js', 'jsb', 'mhtml', 'mht', 'xhtml', 'xht', 'php', 'phtml', 'php3', 'php4', 'php5', 'phps', 'phar', 'shtml', 'jhtml', 'pl', 'py', 'cgi', 'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl', 'xml',], 'MimeTypeExclusions'=>['text/html', 'application/javascript', 'text/javascript', 'text/x-javascript', 'application/x-shellscript', 'application/x-php', 'text/x-php', 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh', 'text/scriptlet', 'application/x-msdownload', 'application/x-msmetafile', 'application/java', 'application/xml', 'text/xml',], 'CheckFileExtensions'=> true, 'StrictFileExtensions'=> true, 'DisableUploadScriptChecks'=> false, 'UploadSizeWarning'=> false, 'TrustedMediaFormats'=>['BITMAP', 'AUDIO', 'VIDEO', 'image/svg+xml', 'application/pdf',], 'MediaHandlers'=>[], 'NativeImageLazyLoading'=> false, 'ParserTestMediaHandlers'=>['image/jpeg'=> 'MockBitmapHandler', 'image/png'=> 'MockBitmapHandler', 'image/gif'=> 'MockBitmapHandler', 'image/tiff'=> 'MockBitmapHandler', 'image/webp'=> 'MockBitmapHandler', 'image/x-ms-bmp'=> 'MockBitmapHandler', 'image/x-bmp'=> 'MockBitmapHandler', 'image/x-xcf'=> 'MockBitmapHandler', 'image/svg+xml'=> 'MockSvgHandler', 'image/vnd.djvu'=> 'MockDjVuHandler',], 'UseImageResize'=> true, 'UseImageMagick'=> false, 'ImageMagickConvertCommand'=> '/usr/bin/convert', 'MaxInterlacingAreas'=>[], 'SharpenParameter'=> '0x0.4', 'SharpenReductionThreshold'=> 0.85, 'ImageMagickTempDir'=> false, 'CustomConvertCommand'=> false, 'JpegTran'=> '/usr/bin/jpegtran', 'JpegPixelFormat'=> 'yuv420', 'JpegQuality'=> 80, 'Exiv2Command'=> '/usr/bin/exiv2', 'Exiftool'=> '/usr/bin/exiftool', 'SVGConverters'=>['ImageMagick'=> ' $path/convert -background "#ffffff00" -thumbnail $widthx$height\\! $input PNG:$output', 'inkscape'=> ' $path/inkscape -w $width -o $output $input', 'batik'=> 'java -Djava.awt.headless=true -jar $path/batik-rasterizer.jar -w $width -d $output $input', 'rsvg'=> ' $path/rsvg-convert -w $width -h $height -o $output $input', 'ImagickExt'=>['SvgHandler::rasterizeImagickExt',],], 'SVGConverter'=> 'ImageMagick', 'SVGConverterPath'=> '', 'SVGMaxSize'=> 5120, 'SVGMetadataCutoff'=> 5242880, 'SVGNativeRendering'=> true, 'SVGNativeRenderingSizeLimit'=> 51200, 'MediaInTargetLanguage'=> true, 'MaxImageArea'=> 12500000, 'MaxAnimatedGifArea'=> 12500000, 'TiffThumbnailType'=>[], 'ThumbnailEpoch'=> '20030516000000', 'AttemptFailureEpoch'=> 1, 'IgnoreImageErrors'=> false, 'GenerateThumbnailOnParse'=> true, 'ShowArchiveThumbnails'=> true, 'EnableAutoRotation'=> null, 'Antivirus'=> null, 'AntivirusSetup'=>['clamav'=>['command'=> 'clamscan --no-summary ', 'codemap'=>[0=> 0, 1=> 1, 52=> -1, ' *'=> false,], 'messagepattern'=> '/.*?:(.*)/sim',],], 'AntivirusRequired'=> true, 'VerifyMimeType'=> true, 'MimeTypeFile'=> 'internal', 'MimeInfoFile'=> 'internal', 'MimeDetectorCommand'=> null, 'TrivialMimeDetection'=> false, 'XMLMimeTypes'=>['http:'svg'=> 'image/svg+xml', 'http:'http:'html'=> 'text/html',], 'ImageLimits'=>[[320, 240,], [640, 480,], [800, 600,], [1024, 768,], [1280, 1024,], [2560, 2048,],], 'ThumbLimits'=>[120, 150, 180, 200, 220, 250, 300, 400,], 'ThumbnailNamespaces'=>[6,], 'ThumbnailSteps'=> null, 'ThumbnailBuckets'=> null, 'ThumbnailMinimumBucketDistance'=> 50, 'UploadThumbnailRenderMap'=>[], 'UploadThumbnailRenderMethod'=> 'jobqueue', 'UploadThumbnailRenderHttpCustomHost'=> false, 'UploadThumbnailRenderHttpCustomDomain'=> false, 'UseTinyRGBForJPGThumbnails'=> false, 'GalleryOptions'=>[], 'ThumbUpright'=> 0.75, 'DirectoryMode'=> 511, 'ResponsiveImages'=> true, 'ImagePreconnect'=> false, 'TrackMediaRequestProvenance'=> false, 'DjvuUseBoxedCommand'=> false, 'DjvuDump'=> null, 'DjvuRenderer'=> null, 'DjvuTxt'=> null, 'DjvuPostProcessor'=> 'pnmtojpeg', 'DjvuOutputExtension'=> 'jpg', 'EmergencyContact'=> false, 'RestTermsOfServiceUrl'=> null, 'PasswordSender'=> false, 'NoReplyAddress'=> false, 'EnableEmail'=> true, 'EnableUserEmail'=> true, 'UserEmailUseReplyTo'=> true, 'PasswordReminderResendTime'=> 24, 'NewPasswordExpiry'=> 604800, 'UserEmailConfirmationTokenExpiry'=> 604800, 'PasswordExpirationDays'=> false, 'PasswordExpireGrace'=> 604800, 'SMTP'=> false, 'AdditionalMailParams'=> null, 'AllowHTMLEmail'=> false, 'EnotifFromEditor'=> false, 'EmailAuthentication'=> true, 'EmailConfirmationBanner'=> false, 'EnotifWatchlist'=> false, 'EnotifUserTalk'=> false, 'EnotifRevealEditorAddress'=> false, 'EnotifMinorEdits'=> true, 'EnotifUseRealName'=> false, 'UsersNotifiedOnAllChanges'=>[], 'DBname'=> 'my_wiki', 'DBmwschema'=> null, 'DBprefix'=> '', 'DBserver'=> 'localhost', 'DBport'=> 5432, 'DBuser'=> 'wikiuser', 'DBpassword'=> '', 'DBtype'=> 'mysql', 'DBssl'=> false, 'DBcompress'=> false, 'DBStrictWarnings'=> false, 'DBadminuser'=> null, 'DBadminpassword'=> null, 'SearchType'=> null, 'SearchTypeAlternatives'=> null, 'DBTableOptions'=> 'ENGINE=InnoDB, DEFAULT CHARSET=binary', 'SQLMode'=> '', 'SQLiteDataDir'=> '', 'SharedDB'=> null, 'SharedPrefix'=> false, 'SharedTables'=>['user', 'user_properties', 'user_autocreate_serial',], 'SharedSchema'=> false, 'DBservers'=> false, 'LBFactoryConf'=>['class'=> 'Wikimedia\\Rdbms\\LBFactorySimple',], 'DataCenterUpdateStickTTL'=> 10, 'DBerrorLog'=> false, 'DBerrorLogTZ'=> false, 'LocalDatabases'=>[], 'DatabaseReplicaLagWarning'=> 10, 'DatabaseReplicaLagCritical'=> 30, 'MaxExecutionTimeForExpensiveQueries'=> 0, 'VirtualDomainsMapping'=>[], 'FileSchemaMigrationStage'=> 3, 'ExternalLinksDomainGaps'=>[], 'ContentHandlers'=>['wikitext'=>['class'=> 'MediaWiki\\Content\\WikitextContentHandler', 'services'=>['TitleFactory', 'ParserFactory', 'GlobalIdGenerator', 'LanguageNameUtils', 'LinkRenderer', 'MagicWordFactory', 'ParsoidParserFactory',],], 'javascript'=>['class'=> 'MediaWiki\\Content\\JavaScriptContentHandler', 'services'=>['MainConfig', 'ParserFactory', 'UserOptionsLookup', 'CodeHighlighter',],], 'json'=>['class'=> 'MediaWiki\\Content\\JsonContentHandler', 'services'=>['ParsoidParserFactory', 'TitleFactory',],], 'css'=>['class'=> 'MediaWiki\\Content\\CssContentHandler', 'services'=>['MainConfig', 'ParserFactory', 'UserOptionsLookup', 'CodeHighlighter',],], 'vue'=>['class'=> 'MediaWiki\\Content\\VueContentHandler', 'services'=>['MainConfig', 'ParserFactory', 'CodeHighlighter',],], 'text'=> 'MediaWiki\\Content\\TextContentHandler', 'unknown'=> 'MediaWiki\\Content\\FallbackContentHandler',], 'NamespaceContentModels'=>[], 'TextModelsToParse'=>['wikitext', 'javascript', 'css',], 'CompressRevisions'=> false, 'ExternalStores'=>[], 'ExternalServers'=>[], 'DefaultExternalStore'=> false, 'RevisionCacheExpiry'=> 604800, 'PageLanguageUseDB'=> false, 'DiffEngine'=> null, 'ExternalDiffEngine'=> false, 'Wikidiff2Options'=>[], 'RequestTimeLimit'=> null, 'TransactionalTimeLimit'=> 120, 'CriticalSectionTimeLimit'=> 180.0, 'MiserMode'=> false, 'DisableQueryPages'=> false, 'QueryCacheLimit'=> 1000, 'WantedPagesThreshold'=> 1, 'AllowSlowParserFunctions'=> false, 'AllowSchemaUpdates'=> true, 'MaxArticleSize'=> 2048, 'MemoryLimit'=> '50M', 'PoolCounterConf'=> null, 'PoolCountClientConf'=>['servers'=>['127.0.0.1',], 'timeout'=> 0.1,], 'MaxUserDBWriteDuration'=> false, 'MaxJobDBWriteDuration'=> false, 'LinkHolderBatchSize'=> 1000, 'MaximumMovedPages'=> 100, 'ForceDeferredUpdatesPreSend'=> false, 'MultiShardSiteStats'=> false, 'CacheDirectory'=> false, 'MainCacheType'=> 0, 'MessageCacheType'=> -1, 'ParserCacheType'=> -1, 'SessionCacheType'=> -1, 'AnonSessionCacheType'=> false, 'LanguageConverterCacheType'=> -1, 'ObjectCaches'=>[0=>['class'=> 'Wikimedia\\ObjectCache\\EmptyBagOStuff', 'reportDupes'=> false,], 1=>['class'=> 'MediaWiki\\ObjectCache\\SqlBagOStuff', 'loggroup'=> 'SQLBagOStuff',], 'memcached-php'=>['class'=> 'Wikimedia\\ObjectCache\\MemcachedPhpBagOStuff', 'loggroup'=> 'memcached',], 'memcached-pecl'=>['class'=> 'Wikimedia\\ObjectCache\\MemcachedPeclBagOStuff', 'loggroup'=> 'memcached',], 'hash'=>['class'=> 'Wikimedia\\ObjectCache\\HashBagOStuff', 'reportDupes'=> false,], 'apc'=>['class'=> 'Wikimedia\\ObjectCache\\APCUBagOStuff', 'reportDupes'=> false,], 'apcu'=>['class'=> 'Wikimedia\\ObjectCache\\APCUBagOStuff', 'reportDupes'=> false,],], 'WANObjectCache'=>[], 'MicroStashType'=> -1, 'MainStash'=> 1, 'ParsoidCacheConfig'=>['StashType'=> null, 'StashDuration'=> 86400, 'WarmParsoidParserCache'=> false,], 'ParsoidSelectiveUpdateSampleRate'=> 0, 'ParserCacheFilterConfig'=>['pcache'=>['default'=>['minCpuTime'=> 0,],], 'postproc-pcache'=>['default'=>['minCpuTime'=> 9223372036854775807,],], 'parsoid-pcache'=>['default'=>['minCpuTime'=> 0,],], 'postproc-parsoid-pcache'=>['default'=>['minCpuTime'=> 0,],],], 'ChronologyProtectorSecret'=> '', 'ParserCacheExpireTime'=> 86400, 'ParserCacheAsyncExpireTime'=> 60, 'ParserCacheAsyncRefreshJobs'=> true, 'OldRevisionParserCacheExpireTime'=> 3600, 'ObjectCacheSessionExpiry'=> 3600, 'PHPSessionHandling'=> 'warn', 'SuspiciousIpExpiry'=> false, 'SessionPbkdf2Iterations'=> 10001, 'UseSessionCookieJwt'=> false, 'JwtSessionCookieIssuer'=> null, 'MemCachedServers'=>['127.0.0.1:11211',], 'MemCachedPersistent'=> false, 'MemCachedTimeout'=> 500000, 'UseLocalMessageCache'=> false, 'AdaptiveMessageCache'=> false, 'LocalisationCacheConf'=>['class'=> 'MediaWiki\\Language\\LocalisationCache', 'store'=> 'detect', 'storeClass'=> false, 'storeDirectory'=> false, 'storeServer'=>[], 'forceRecache'=> false, 'manualRecache'=> false,], 'CachePages'=> true, 'CacheEpoch'=> '20030516000000', 'GitInfoCacheDirectory'=> false, 'UseFileCache'=> false, 'FileCacheDepth'=> 2, 'RenderHashAppend'=> '', 'EnableSidebarCache'=> false, 'SidebarCacheExpiry'=> 86400, 'UseGzip'=> false, 'InvalidateCacheOnLocalSettingsChange'=> true, 'ExtensionInfoMTime'=> false, 'EnableRemoteBagOStuffTests'=> false, 'UseCdn'=> false, 'VaryOnXFP'=> false, 'InternalServer'=> false, 'CdnMaxAge'=> 18000, 'CdnMaxageLagged'=> 30, 'CdnMaxageStale'=> 10, 'CdnReboundPurgeDelay'=> 0, 'CdnMaxageSubstitute'=> 60, 'ForcedRawSMaxage'=> 300, 'CdnServers'=>[], 'CdnServersNoPurge'=>[], 'HTCPRouting'=>[], 'HTCPMulticastTTL'=> 1, 'UsePrivateIPs'=> false, 'CdnMatchParameterOrder'=> true, 'LanguageCode'=> 'en', 'GrammarForms'=>[], 'InterwikiMagic'=> true, 'HideInterlanguageLinks'=> false, 'ExtraInterlanguageLinkPrefixes'=>[], 'InterlanguageLinkCodeMap'=>[], 'ExtraLanguageNames'=>[], 'ExtraLanguageCodes'=>['bh'=> 'bho', 'no'=> 'nb', 'simple'=> 'en',], 'DummyLanguageCodes'=>[], 'AllUnicodeFixes'=> false, 'LegacyEncoding'=> false, 'AmericanDates'=> false, 'TranslateNumerals'=> true, 'UseDatabaseMessages'=> true, 'MaxMsgCacheEntrySize'=> 10000, 'DisableLangConversion'=> false, 'DisableTitleConversion'=> false, 'DefaultLanguageVariant'=> false, 'UsePigLatinVariant'=> false, 'DisabledVariants'=>[], 'VariantArticlePath'=> false, 'UseXssLanguage'=> false, 'LoginLanguageSelector'=> false, 'ForceUIMsgAsContentMsg'=>[], 'RawHtmlMessages'=>[], 'Localtimezone'=> null, 'LocalTZoffset'=> null, 'OverrideUcfirstCharacters'=>[], 'MimeType'=> 'text/html', 'Html5Version'=> null, 'EditSubmitButtonLabelPublish'=> false, 'XhtmlNamespaces'=>[], 'SiteNotice'=> '', 'BrowserFormatDetection'=> 'telephone=no', 'SkinMetaTags'=>[], 'DefaultSkin'=> 'vector-2022', 'FallbackSkin'=> 'fallback', 'SkipSkins'=>[], 'DisableOutputCompression'=> false, 'FragmentMode'=>['html5', 'legacy',], 'ExternalInterwikiFragmentMode'=> 'legacy', 'FooterIcons'=>['copyright'=>['copyright'=>[],], 'poweredby'=>['mediawiki'=>['src'=> null, 'url'=> 'https:'alt'=> 'Powered by MediaWiki', 'lang'=> 'en',],],], 'EnableSectionShare'=> false, 'UseCombinedLoginLink'=> false, 'Edititis'=> false, 'Send404Code'=> true, 'ShowRollbackEditCount'=> 10, 'EnableCanonicalServerLink'=> false, 'InterwikiLogoOverride'=>[], 'ResourceModules'=>[], 'ResourceModuleSkinStyles'=>[], 'ResourceLoaderSources'=>[], 'ResourceBasePath'=> null, 'ResourceLoaderMaxage'=>[], 'ResourceLoaderDebug'=> false, 'ResourceLoaderMaxQueryLength'=> false, 'ResourceLoaderValidateJS'=> true, 'ResourceLoaderEnableJSProfiler'=> false, 'ResourceLoaderStorageEnabled'=> true, 'ResourceLoaderStorageVersion'=> 1, 'ResourceLoaderEnableSourceMapLinks'=> true, 'AllowSiteCSSOnRestrictedPages'=> false, 'VueDevelopmentMode'=> false, 'CodexDevelopmentDir'=> null, 'MetaNamespace'=> false, 'MetaNamespaceTalk'=> false, 'CanonicalNamespaceNames'=>[-2=> 'Media', -1=> 'Special', 0=> '', 1=> 'Talk', 2=> 'User', 3=> 'User_talk', 4=> 'Project', 5=> 'Project_talk', 6=> 'File', 7=> 'File_talk', 8=> 'MediaWiki', 9=> 'MediaWiki_talk', 10=> 'Template', 11=> 'Template_talk', 12=> 'Help', 13=> 'Help_talk', 14=> 'Category', 15=> 'Category_talk',], 'ExtraNamespaces'=>[], 'ExtraGenderNamespaces'=>[], 'NamespaceAliases'=>[], 'LegalTitleChars'=> ' %!"$&\'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+', 'CapitalLinks' => true, 'CapitalLinkOverrides' => [ ], 'NamespacesWithSubpages' => [ 1 => true, 2 => true, 3 => true, 4 => true, 5 => true, 7 => true, 8 => true, 9 => true, 10 => true, 11 => true, 12 => true, 13 => true, 15 => true, ], 'NamespacesWithoutAutoSummaries' => [ ], 'ContentNamespaces' => [ 0, ], 'ShortPagesNamespaceExclusions' => [ ], 'ExtraSignatureNamespaces' => [ ], 'InvalidRedirectTargets' => [ 'Filepath', 'Mypage', 'Mytalk', 'Redirect', 'Mylog', ], 'DisableHardRedirects' => false, 'FixDoubleRedirects' => false, 'LocalInterwikis' => [ ], 'InterwikiExpiry' => 10800, 'InterwikiCache' => false, 'InterwikiScopes' => 3, 'InterwikiFallbackSite' => 'wiki', 'RedirectSources' => false, 'SiteTypes' => [ 'mediawiki' => 'MediaWiki\\Site\\MediaWikiSite', ], 'MaxTocLevel' => 999, 'MaxPPNodeCount' => 1000000, 'MaxTemplateDepth' => 100, 'MaxPPExpandDepth' => 100, 'UrlProtocols' => [ 'bitcoin:', 'ftp: 'ftps: 'geo:', 'git: 'gopher: 'http: 'https: 'irc: 'ircs: 'magnet:', 'mailto:', 'matrix:', 'mms: 'news:', 'nntp: 'redis: 'sftp: 'sip:', 'sips:', 'sms:', 'ssh: 'svn: 'tel:', 'telnet: 'urn:', 'wikipedia: 'worldwind: 'xmpp:', ' ], 'CleanSignatures' => true, 'AllowExternalImages' => false, 'AllowExternalImagesFrom' => '', 'EnableImageWhitelist' => false, 'TidyConfig' => [ ], 'ParsoidSettings' => [ 'useSelser' => true, ], 'ParsoidExperimentalParserFunctionOutput' => false, 'RawHtml' => false, 'ExternalLinkTarget' => false, 'NoFollowLinks' => true, 'NoFollowNsExceptions' => [ ], 'NoFollowDomainExceptions' => [ 'mediawiki.org', ], 'RegisterInternalExternals' => false, 'ExternalLinksIgnoreDomains' => [ ], 'AllowDisplayTitle' => true, 'RestrictDisplayTitle' => true, 'ExpensiveParserFunctionLimit' => 100, 'PreprocessorCacheThreshold' => 1000, 'EnableScaryTranscluding' => false, 'TranscludeCacheExpiry' => 3600, 'EnableMagicLinks' => [ 'ISBN' => false, 'PMID' => false, 'RFC' => false, ], 'ParserEnableUserLanguage' => false, 'ArticleCountMethod' => 'link', 'ActiveUserDays' => 30, 'LearnerEdits' => 10, 'LearnerMemberSince' => 4, 'ExperiencedUserEdits' => 500, 'ExperiencedUserMemberSince' => 30, 'ManualRevertSearchRadius' => 15, 'RevertedTagMaxDepth' => 15, 'CentralIdLookupProviders' => [ 'local' => [ 'class' => 'MediaWiki\\User\\CentralId\\LocalIdLookup', 'services' => [ 'MainConfig', 'DBLoadBalancerFactory', 'HideUserUtils', ], ], ], 'CentralIdLookupProvider' => 'local', 'UserRegistrationProviders' => [ 'local' => [ 'class' => 'MediaWiki\\User\\Registration\\LocalUserRegistrationProvider', 'services' => [ 'ConnectionProvider', ], ], ], 'PasswordPolicy' => [ 'policies' => [ 'bureaucrat' => [ 'MinimalPasswordLength' => 10, 'MinimumPasswordLengthToLogin' => 1, ], 'sysop' => [ 'MinimalPasswordLength' => 10, 'MinimumPasswordLengthToLogin' => 1, ], 'interface-admin' => [ 'MinimalPasswordLength' => 10, 'MinimumPasswordLengthToLogin' => 1, ], 'bot' => [ 'MinimalPasswordLength' => 10, 'MinimumPasswordLengthToLogin' => 1, ], 'default' => [ 'MinimalPasswordLength' => [ 'value' => 8, 'suggestChangeOnLogin' => true, ], 'PasswordCannotBeSubstringInUsername' => [ 'value' => true, 'suggestChangeOnLogin' => true, ], 'PasswordCannotMatchDefaults' => [ 'value' => true, 'suggestChangeOnLogin' => true, ], 'MaximalPasswordLength' => [ 'value' => 4096, 'suggestChangeOnLogin' => true, ], 'PasswordNotInCommonList' => [ 'value' => true, 'suggestChangeOnLogin' => true, ], ], ], 'checks' => [ 'MinimalPasswordLength' => [ 'MediaWiki\\Password\\PasswordPolicyChecks', 'checkMinimalPasswordLength', ], 'MinimumPasswordLengthToLogin' => [ 'MediaWiki\\Password\\PasswordPolicyChecks', 'checkMinimumPasswordLengthToLogin', ], 'PasswordCannotBeSubstringInUsername' => [ 'MediaWiki\\Password\\PasswordPolicyChecks', 'checkPasswordCannotBeSubstringInUsername', ], 'PasswordCannotMatchDefaults' => [ 'MediaWiki\\Password\\PasswordPolicyChecks', 'checkPasswordCannotMatchDefaults', ], 'MaximalPasswordLength' => [ 'MediaWiki\\Password\\PasswordPolicyChecks', 'checkMaximalPasswordLength', ], 'PasswordNotInCommonList' => [ 'MediaWiki\\Password\\PasswordPolicyChecks', 'checkPasswordNotInCommonList', ], ], ], 'AuthManagerConfig' => null, 'AuthManagerAutoConfig' => [ 'preauth' => [ 'MediaWiki\\Auth\\ThrottlePreAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\ThrottlePreAuthenticationProvider', 'sort' => 0, ], 'MediaWiki\\Auth\\PreviouslyRenamedAccountPreAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\PreviouslyRenamedAccountPreAuthenticationProvider', 'services' => [ 'ConnectionProvider', 'UserFactory', ], 'sort' => 0, ], ], 'primaryauth' => [ 'MediaWiki\\Auth\\TemporaryPasswordPrimaryAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\TemporaryPasswordPrimaryAuthenticationProvider', 'services' => [ 'DBLoadBalancerFactory', 'UserOptionsLookup', ], 'args' => [ [ 'authoritative' => false, ], ], 'sort' => 0, ], 'MediaWiki\\Auth\\LocalPasswordPrimaryAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\LocalPasswordPrimaryAuthenticationProvider', 'services' => [ 'DBLoadBalancerFactory', ], 'args' => [ [ 'authoritative' => true, ], ], 'sort' => 100, ], ], 'secondaryauth' => [ 'MediaWiki\\Auth\\CheckBlocksSecondaryAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\CheckBlocksSecondaryAuthenticationProvider', 'sort' => 0, ], 'MediaWiki\\Auth\\ResetPasswordSecondaryAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\ResetPasswordSecondaryAuthenticationProvider', 'sort' => 100, ], 'MediaWiki\\Auth\\EmailNotificationSecondaryAuthenticationProvider' => [ 'class' => 'MediaWiki\\Auth\\EmailNotificationSecondaryAuthenticationProvider', 'services' => [ 'DBLoadBalancerFactory', ], 'sort' => 200, ], ], ], 'RememberMe' => 'choose', 'ReauthenticateTime' => [ 'default' => 3600, ], 'ChangeCredentialsBlacklist' => [ 'MediaWiki\\Auth\\TemporaryPasswordAuthenticationRequest', ], 'RemoveCredentialsBlacklist' => [ 'MediaWiki\\Auth\\PasswordAuthenticationRequest', ], 'InvalidPasswordReset' => true, 'PasswordDefault' => 'pbkdf2', 'PasswordConfig' => [ 'A' => [ 'class' => 'MediaWiki\\Password\\MWOldPassword', ], 'B' => [ 'class' => 'MediaWiki\\Password\\MWSaltedPassword', ], 'pbkdf2-legacyA' => [ 'class' => 'MediaWiki\\Password\\LayeredParameterizedPassword', 'types' => [ 'A', 'pbkdf2', ], ], 'pbkdf2-legacyB' => [ 'class' => 'MediaWiki\\Password\\LayeredParameterizedPassword', 'types' => [ 'B', 'pbkdf2', ], ], 'bcrypt' => [ 'class' => 'MediaWiki\\Password\\BcryptPassword', 'cost' => 9, ], 'pbkdf2' => [ 'class' => 'MediaWiki\\Password\\Pbkdf2PasswordUsingOpenSSL', 'algo' => 'sha512', 'cost' => '30000', 'length' => '64', ], 'argon2' => [ 'class' => 'MediaWiki\\Password\\Argon2Password', 'algo' => 'auto', ], ], 'PasswordResetRoutes' => [ 'username' => true, 'email' => true, ], 'MaxSigChars' => 255, 'SignatureValidation' => 'warning', 'SignatureAllowedLintErrors' => [ 'obsolete-tag', ], 'MaxNameChars' => 255, 'ReservedUsernames' => [ 'MediaWiki default', 'Conversion script', 'Maintenance script', 'Template namespace initialisation script', 'ScriptImporter', 'Delete page script', 'Move page script', 'Command line script', 'Unknown user', 'msg:double-redirect-fixer', 'msg:usermessage-editor', 'msg:proxyblocker', 'msg:sorbs', 'msg:spambot_username', 'msg:autochange-username', ], 'DefaultUserOptions' => [ 'ccmeonemails' => 0, 'date' => 'default', 'diffonly' => 0, 'diff-type' => 'table', 'disablemail' => 0, 'editfont' => 'monospace', 'editondblclick' => 0, 'editrecovery' => 0, 'editsectiononrightclick' => 0, 'email-allow-new-users' => 1, 'enotifminoredits' => 0, 'enotifrevealaddr' => 0, 'enotifusertalkpages' => 1, 'enotifwatchlistpages' => 1, 'extendwatchlist' => 1, 'fancysig' => 0, 'forceeditsummary' => 0, 'forcesafemode' => 0, 'gender' => 'unknown', 'hidecategorization' => 1, 'hideminor' => 0, 'hidepatrolled' => 0, 'imagesize' => 2, 'minordefault' => 0, 'newpageshidepatrolled' => 0, 'nickname' => '', 'norollbackdiff' => 0, 'prefershttps' => 1, 'previewonfirst' => 0, 'previewontop' => 1, 'pst-cssjs' => 1, 'rcdays' => 7, 'rcenhancedfilters-disable' => 0, 'rclimit' => 50, 'requireemail' => 0, 'search-match-redirect' => true, 'search-special-page' => 'Search', 'search-thumbnail-extra-namespaces' => true, 'searchlimit' => 20, 'showhiddencats' => 0, 'shownumberswatching' => 1, 'showrollbackconfirmation' => 0, 'skin' => false, 'skin-responsive' => 1, 'thumbsize' => 5, 'underline' => 2, 'useeditwarning' => 1, 'uselivepreview' => 0, 'usenewrc' => 1, 'watchcreations' => 1, 'watchcreations-expiry' => 'infinite', 'watchdefault' => 1, 'watchdefault-expiry' => 'infinite', 'watchdeletion' => 0, 'watchlistdays' => 7, 'watchlisthideanons' => 0, 'watchlisthidebots' => 0, 'watchlisthidecategorization' => 1, 'watchlisthideliu' => 0, 'watchlisthideminor' => 0, 'watchlisthideown' => 0, 'watchlisthidepatrolled' => 0, 'watchlistreloadautomatically' => 0, 'watchlistunwatchlinks' => 0, 'watchmoves' => 0, 'watchrollback' => 0, 'watchuploads' => 1, 'watchrollback-expiry' => 'infinite', 'watchstar-expiry' => 'infinite', 'wlenhancedfilters-disable' => 0, 'wllimit' => 250, ], 'ConditionalUserOptions' => [ ], 'HiddenPrefs' => [ ], 'UserJsPrefLimit' => 100, 'InvalidUsernameCharacters' => '@:>=', 'UserrightsInterwikiDelimiter' => '@', 'SecureLogin' => false, 'AuthenticationTokenVersion' => null, 'SessionProviders' => [ 'MediaWiki\\Session\\CookieSessionProvider' => [ 'class' => 'MediaWiki\\Session\\CookieSessionProvider', 'args' => [ [ 'priority' => 30, ], ], 'services' => [ 'JwtCodec', 'UrlUtils', ], ], 'MediaWiki\\Session\\BotPasswordSessionProvider' => [ 'class' => 'MediaWiki\\Session\\BotPasswordSessionProvider', 'args' => [ [ 'priority' => 75, ], ], 'services' => [ 'GrantsInfo', ], ], ], 'AutoCreateTempUser' => [ 'known' => false, 'enabled' => false, 'actions' => [ 'edit', ], 'genPattern' => '~$1', 'matchPattern' => null, 'reservedPattern' => '~$1', 'serialProvider' => [ 'type' => 'local', 'useYear' => true, ], 'serialMapping' => [ 'type' => 'readable-numeric', ], 'expireAfterDays' => 90, 'notifyBeforeExpirationDays' => 10, ], 'AutoblockExemptions' => [ ], 'AutoblockExpiry' => 86400, 'BlockAllowsUTEdit' => true, 'BlockCIDRLimit' => [ 'IPv4' => 16, 'IPv6' => 19, ], 'BlockDisablesLogin' => false, 'EnableMultiBlocks' => false, 'WhitelistRead' => false, 'WhitelistReadRegexp' => false, 'EmailConfirmToEdit' => false, 'HideIdentifiableRedirects' => true, 'GroupPermissions' => [ '*' => [ 'createaccount' => true, 'autocreateaccount' => true, 'read' => true, 'edit' => true, 'createpage' => true, 'createtalk' => true, 'viewmyprivateinfo' => true, 'editmyprivateinfo' => true, 'editmyoptions' => true, ], 'user' => [ 'move' => true, 'move-subpages' => true, 'move-rootuserpages' => true, 'move-categorypages' => true, 'movefile' => true, 'read' => true, 'edit' => true, 'createpage' => true, 'createtalk' => true, 'upload' => true, 'reupload' => true, 'reupload-shared' => true, 'minoredit' => true, 'editmyusercss' => true, 'editmyuserjson' => true, 'editmyuserjs' => true, 'editmyuserjsredirect' => true, 'sendemail' => true, 'applychangetags' => true, 'changetags' => true, 'viewmywatchlist' => true, 'editmywatchlist' => true, 'createwithcontentmodel' => true, 'logout' => true, ], 'autoconfirmed' => [ 'autoconfirmed' => true, 'editsemiprotected' => true, ], 'bot' => [ 'bot' => true, 'autoconfirmed' => true, 'editsemiprotected' => true, 'nominornewtalk' => true, 'autopatrol' => true, 'suppressredirect' => true, 'apihighlimits' => true, ], 'sysop' => [ 'block' => true, 'createaccount' => true, 'createpreviouslyrenamedaccount' => true, 'delete' => true, 'bigdelete' => true, 'deletedhistory' => true, 'deletedtext' => true, 'undelete' => true, 'editcontentmodel' => true, 'editinterface' => true, 'editsitejson' => true, 'edituserjson' => true, 'import' => true, 'importupload' => true, 'move' => true, 'move-subpages' => true, 'move-rootuserpages' => true, 'move-categorypages' => true, 'patrol' => true, 'autopatrol' => true, 'protect' => true, 'editprotected' => true, 'rollback' => true, 'upload' => true, 'reupload' => true, 'reupload-shared' => true, 'unwatchedpages' => true, 'autoconfirmed' => true, 'editsemiprotected' => true, 'ipblock-exempt' => true, 'blockemail' => true, 'markbotedits' => true, 'apihighlimits' => true, 'browsearchive' => true, 'noratelimit' => true, 'movefile' => true, 'unblockself' => true, 'suppressredirect' => true, 'mergehistory' => true, 'managechangetags' => true, 'deletechangetags' => true, ], 'interface-admin' => [ 'editinterface' => true, 'editsitecss' => true, 'editsitejson' => true, 'editsitejs' => true, 'editusercss' => true, 'edituserjson' => true, 'edituserjs' => true, ], 'bureaucrat' => [ 'userrights' => true, 'noratelimit' => true, 'renameuser' => true, ], 'suppress' => [ 'hideuser' => true, 'suppressrevision' => true, 'viewsuppressed' => true, 'suppressionlog' => true, 'deleterevision' => true, 'deletelogentry' => true, ], ], 'PrivilegedGroups' => [ 'bureaucrat', 'interface-admin', 'suppress', 'sysop', ], 'RevokePermissions' => [ ], 'GroupInheritsPermissions' => [ ], 'ImplicitGroups' => [ '*', 'user', 'autoconfirmed', ], 'GroupsAddToSelf' => [ ], 'GroupsRemoveFromSelf' => [ ], 'RestrictedGroups' => [ ], 'UserRequirementsPrivateConditions' => [ ], 'RestrictionTypes' => [ 'create', 'edit', 'move', 'upload', ], 'RestrictionLevels' => [ '', 'autoconfirmed', 'sysop', ], 'CascadingRestrictionLevels' => [ 'sysop', ], 'SemiprotectedRestrictionLevels' => [ 'autoconfirmed', ], 'NamespaceProtection' => [ ], 'RestrictUserPageEditing' => false, 'NonincludableNamespaces' => [ ], 'AutoConfirmAge' => 0, 'AutoConfirmCount' => 0, 'Autopromote' => [ 'autoconfirmed' => [ '&', [ 1, null, ], [ 2, null, ], ], ], 'AutopromoteOnce' => [ 'onEdit' => [ ], ], 'AutopromoteOnceLogInRC' => true, 'AutopromoteOnceRCExcludedGroups' => [ ], 'AddGroups' => [ ], 'RemoveGroups' => [ ], 'AvailableRights' => [ ], 'ImplicitRights' => [ ], 'DeleteRevisionsLimit' => 0, 'DeleteRevisionsBatchSize' => 1000, 'HideUserContribLimit' => 1000, 'AccountCreationThrottle' => [ [ 'count' => 0, 'seconds' => 86400, ], ], 'TempAccountCreationThrottle' => [ [ 'count' => 1, 'seconds' => 600, ], [ 'count' => 6, 'seconds' => 86400, ], ], 'TempAccountNameAcquisitionThrottle' => [ [ 'count' => 60, 'seconds' => 86400, ], ], 'SpamRegex' => [ ], 'SummarySpamRegex' => [ ], 'EnableDnsBlacklist' => false, 'DnsBlacklistUrls' => [ ], 'ProxyList' => [ ], 'ProxyWhitelist' => [ ], 'SoftBlockRanges' => [ ], 'ApplyIpBlocksToXff' => false, 'RateLimits' => [ 'edit' => [ 'ip' => [ 8, 60, ], 'newbie' => [ 8, 60, ], 'user' => [ 90, 60, ], ], 'move' => [ 'newbie' => [ 2, 120, ], 'user' => [ 8, 60, ], ], 'upload' => [ 'ip' => [ 8, 60, ], 'newbie' => [ 8, 60, ], ], 'rollback' => [ 'user' => [ 10, 60, ], 'newbie' => [ 5, 120, ], ], 'mailpassword' => [ 'ip' => [ 5, 3600, ], ], 'sendemail' => [ 'ip' => [ 5, 86400, ], 'newbie' => [ 5, 86400, ], 'user' => [ 20, 86400, ], ], 'changeemail' => [ 'ip-all' => [ 10, 3600, ], 'user' => [ 4, 86400, ], ], 'confirmemail' => [ 'ip-all' => [ 10, 3600, ], 'user' => [ 4, 86400, ], ], 'purge' => [ 'ip' => [ 30, 60, ], 'user' => [ 30, 60, ], ], 'linkpurge' => [ 'ip' => [ 30, 60, ], 'user' => [ 30, 60, ], ], 'renderfile' => [ 'ip' => [ 700, 30, ], 'user' => [ 700, 30, ], ], 'renderfile-nonstandard' => [ 'ip' => [ 70, 30, ], 'user' => [ 70, 30, ], ], 'stashedit' => [ 'ip' => [ 30, 60, ], 'newbie' => [ 30, 60, ], ], 'stashbasehtml' => [ 'ip' => [ 5, 60, ], 'newbie' => [ 5, 60, ], ], 'changetags' => [ 'ip' => [ 8, 60, ], 'newbie' => [ 8, 60, ], ], 'editcontentmodel' => [ 'newbie' => [ 2, 120, ], 'user' => [ 8, 60, ], ], ], 'RateLimitsExcludedIPs' => [ ], 'PutIPinRC' => true, 'QueryPageDefaultLimit' => 50, 'ExternalQuerySources' => [ ], 'PasswordAttemptThrottle' => [ [ 'count' => 5, 'seconds' => 300, ], [ 'count' => 150, 'seconds' => 172800, ], ], 'GrantPermissions' => [ 'basic' => [ 'autocreateaccount' => true, 'autoconfirmed' => true, 'autopatrol' => true, 'editsemiprotected' => true, 'ipblock-exempt' => true, 'nominornewtalk' => true, 'patrolmarks' => true, 'read' => true, 'unwatchedpages' => true, ], 'highvolume' => [ 'bot' => true, 'apihighlimits' => true, 'noratelimit' => true, 'markbotedits' => true, ], 'import' => [ 'import' => true, 'importupload' => true, ], 'editpage' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'pagelang' => true, ], 'editprotected' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'editprotected' => true, ], 'editmycssjs' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'editmyusercss' => true, 'editmyuserjson' => true, 'editmyuserjs' => true, ], 'editmyoptions' => [ 'editmyoptions' => true, 'editmyuserjson' => true, ], 'editinterface' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'editinterface' => true, 'edituserjson' => true, 'editsitejson' => true, ], 'editsiteconfig' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'editinterface' => true, 'edituserjson' => true, 'editsitejson' => true, 'editusercss' => true, 'edituserjs' => true, 'editsitecss' => true, 'editsitejs' => true, ], 'createeditmovepage' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'createpage' => true, 'createtalk' => true, 'delete-redirect' => true, 'move' => true, 'move-rootuserpages' => true, 'move-subpages' => true, 'move-categorypages' => true, 'suppressredirect' => true, ], 'uploadfile' => [ 'upload' => true, 'reupload-own' => true, ], 'uploadeditmovefile' => [ 'upload' => true, 'reupload-own' => true, 'reupload' => true, 'reupload-shared' => true, 'upload_by_url' => true, 'movefile' => true, 'suppressredirect' => true, ], 'patrol' => [ 'patrol' => true, ], 'rollback' => [ 'rollback' => true, ], 'blockusers' => [ 'block' => true, 'blockemail' => true, ], 'viewdeleted' => [ 'browsearchive' => true, 'deletedhistory' => true, 'deletedtext' => true, ], 'viewrestrictedlogs' => [ 'suppressionlog' => true, ], 'delete' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'browsearchive' => true, 'deletedhistory' => true, 'deletedtext' => true, 'delete' => true, 'bigdelete' => true, 'deletelogentry' => true, 'deleterevision' => true, 'undelete' => true, ], 'oversight' => [ 'suppressrevision' => true, 'viewsuppressed' => true, ], 'protect' => [ 'edit' => true, 'minoredit' => true, 'applychangetags' => true, 'changetags' => true, 'editcontentmodel' => true, 'createwithcontentmodel' => true, 'editprotected' => true, 'protect' => true, ], 'viewmywatchlist' => [ 'viewmywatchlist' => true, ], 'editmywatchlist' => [ 'editmywatchlist' => true, ], 'sendemail' => [ 'sendemail' => true, ], 'createaccount' => [ 'createaccount' => true, ], 'privateinfo' => [ 'viewmyprivateinfo' => true, ], 'mergehistory' => [ 'mergehistory' => true, ], 'managesessions' => [ 'logout' => true, ], ], 'GrantPermissionGroups' => [ 'basic' => 'hidden', 'editpage' => 'page-interaction', 'createeditmovepage' => 'page-interaction', 'editprotected' => 'page-interaction', 'patrol' => 'page-interaction', 'uploadfile' => 'file-interaction', 'uploadeditmovefile' => 'file-interaction', 'sendemail' => 'email', 'viewmywatchlist' => 'watchlist-interaction', 'editviewmywatchlist' => 'watchlist-interaction', 'editmycssjs' => 'customization', 'editmyoptions' => 'customization', 'editinterface' => 'administration', 'editsiteconfig' => 'administration', 'rollback' => 'administration', 'blockusers' => 'administration', 'delete' => 'administration', 'viewdeleted' => 'administration', 'viewrestrictedlogs' => 'administration', 'protect' => 'administration', 'oversight' => 'administration', 'createaccount' => 'administration', 'mergehistory' => 'administration', 'import' => 'administration', 'highvolume' => 'high-volume', 'privateinfo' => 'private-information', 'managesessions' => 'private-information', ], 'GrantRiskGroups' => [ 'basic' => 'low', 'editpage' => 'low', 'createeditmovepage' => 'low', 'editprotected' => 'vandalism', 'patrol' => 'low', 'uploadfile' => 'low', 'uploadeditmovefile' => 'low', 'sendemail' => 'security', 'viewmywatchlist' => 'low', 'editviewmywatchlist' => 'low', 'editmycssjs' => 'security', 'editmyoptions' => 'security', 'editinterface' => 'vandalism', 'editsiteconfig' => 'security', 'rollback' => 'low', 'blockusers' => 'vandalism', 'delete' => 'vandalism', 'viewdeleted' => 'vandalism', 'viewrestrictedlogs' => 'security', 'protect' => 'vandalism', 'oversight' => 'security', 'createaccount' => 'low', 'mergehistory' => 'vandalism', 'import' => 'security', 'highvolume' => 'low', 'privateinfo' => 'low', ], 'EnableBotPasswords' => true, 'BotPasswordsCluster' => false, 'BotPasswordsDatabase' => false, 'BotPasswordsLimit' => 100, 'SecretKey' => false, 'JwtPrivateKey' => false, 'JwtPublicKey' => false, 'AllowUserJs' => false, 'ReauthenticateForActions' => [ 'edituserjs' => 'edituserjscss', 'editusercss' => 'edituserjscss', 'editsitejs' => 'editsitejscss', 'editsitecss' => 'editsitejscss', ], 'AllowUserCss' => false, 'AllowUserCssPrefs' => true, 'UseSiteJs' => true, 'UseSiteCss' => true, 'BreakFrames' => false, 'EditPageFrameOptions' => 'DENY', 'ApiFrameOptions' => 'DENY', 'CSPHeader' => false, 'CSPReportOnlyHeader' => false, 'CSPUseReportURIDirective' => false, 'CSPFalsePositiveUrls' => [ 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'https: 'chrome-extension' => true, ], 'AllowCrossOrigin' => false, 'RestAllowCrossOriginCookieAuth' => false, 'SessionSecret' => false, 'CookieExpiration' => 2592000, 'ExtendedLoginCookieExpiration' => 15552000, 'SessionCookieJwtExpiration' => 14400, 'CookieDomain' => '', 'CookiePath' => '/', 'CookieSecure' => 'detect', 'CookiePrefix' => false, 'CookieHttpOnly' => true, 'CookieSameSite' => null, 'CacheVaryCookies' => [ ], 'SessionName' => false, 'CookieSetOnAutoblock' => true, 'CookieSetOnIpBlock' => true, 'DebugLogFile' => '', 'DebugLogPrefix' => '', 'DebugRedirects' => false, 'DebugRawPage' => false, 'DebugComments' => false, 'DebugDumpSql' => false, 'TrxProfilerLimits' => [ 'GET' => [ 'masterConns' => 0, 'writes' => 0, 'readQueryTime' => 5, 'readQueryRows' => 10000, ], 'POST' => [ 'readQueryTime' => 5, 'writeQueryTime' => 1, 'readQueryRows' => 100000, 'maxAffected' => 1000, ], 'POST-nonwrite' => [ 'writes' => 0, 'readQueryTime' => 5, 'readQueryRows' => 10000, ], 'PostSend-GET' => [ 'readQueryTime' => 5, 'writeQueryTime' => 1, 'readQueryRows' => 10000, 'maxAffected' => 1000, 'masterConns' => 0, 'writes' => 0, ], 'PostSend-POST' => [ 'readQueryTime' => 5, 'writeQueryTime' => 1, 'readQueryRows' => 100000, 'maxAffected' => 1000, ], 'JobRunner' => [ 'readQueryTime' => 30, 'writeQueryTime' => 5, 'readQueryRows' => 100000, 'maxAffected' => 500, ], 'Maintenance' => [ 'writeQueryTime' => 5, 'maxAffected' => 1000, ], ], 'DebugLogGroups' => [ ], 'MWLoggerDefaultSpi' => [ 'class' => 'MediaWiki\\Logger\\LegacySpi', ], 'ShowDebug' => false, 'SpecialVersionShowHooks' => false, 'ShowExceptionDetails' => false, 'LogExceptionBacktrace' => true, 'PropagateErrors' => true, 'ShowHostnames' => false, 'OverrideHostname' => false, 'DevelopmentWarnings' => false, 'DeprecationReleaseLimit' => false, 'Profiler' => [ ], 'StatsdServer' => false, 'StatsdMetricPrefix' => 'MediaWiki', 'StatsTarget' => null, 'StatsFormat' => null, 'StatsPrefix' => 'mediawiki', 'OpenTelemetryConfig' => null, 'PageInfoTransclusionLimit' => 50, 'EnableJavaScriptTest' => false, 'CachePrefix' => false, 'DebugToolbar' => false, 'ApiClientErrorSampleRate' => 1.0, 'DisableTextSearch' => false, 'AdvancedSearchHighlighting' => false, 'SearchHighlightBoundaries' => '[\\p{Z}\\p{P}\\p{C}]', 'OpenSearchTemplates' => [ 'application/x-suggestions+json' => false, 'application/x-suggestions+xml' => false, ], 'OpenSearchDefaultLimit' => 10, 'OpenSearchDescriptionLength' => 100, 'SearchSuggestCacheExpiry' => 1200, 'DisableSearchUpdate' => false, 'NamespacesToBeSearchedDefault' => [ true, ], 'DisableInternalSearch' => false, 'SearchForwardUrl' => null, 'SitemapNamespaces' => false, 'SitemapNamespacesPriorities' => false, 'SitemapApiConfig' => [ ], 'SpecialSearchFormOptions' => [ ], 'SearchMatchRedirectPreference' => false, 'SearchRunSuggestedQuery' => true, 'Diff3' => '/usr/bin/diff3', 'Diff' => '/usr/bin/diff', 'PreviewOnOpenNamespaces' => [ 14 => true, ], 'UniversalEditButton' => true, 'UseAutomaticEditSummaries' => true, 'CommandLineDarkBg' => false, 'ReadOnly' => null, 'ReadOnlyWatchedItemStore' => false, 'ReadOnlyFile' => false, 'UpgradeKey' => false, 'GitBin' => '/usr/bin/git', 'GitRepositoryViewers' => [ 'https: 'ssh: 'https: 'git@github\\.com:(.*?)(\\.git)?' => 'https: ], 'InstallerInitialPages' => [ [ 'titlemsg' => 'mainpage', 'text' => '{{subst:int:mainpagetext}}{{subst:int:mainpagedocfooter}}', ], ], 'RCMaxAge' => 7776000, 'WatchersMaxAge' => 15552000, 'UnwatchedPageSecret' => 1, 'RCFilterByAge' => false, 'RCLinkLimits' => [ 50, 100, 250, 500, ], 'RCLinkDays' => [ 1, 3, 7, 14, 30, ], 'RCFeeds' => [ ], 'RCWatchCategoryMembership' => false, 'UseRCPatrol' => true, 'StructuredChangeFiltersLiveUpdatePollingRate' => 3, 'UseNPPatrol' => true, 'UseFilePatrol' => true, 'Feed' => true, 'FeedLimit' => 50, 'FeedCacheTimeout' => 60, 'FeedDiffCutoff' => 32768, 'OverrideSiteFeed' => [ ], 'FeedClasses' => [ 'rss' => 'MediaWiki\\Feed\\RSSFeed', 'atom' => 'MediaWiki\\Feed\\AtomFeed', ], 'AdvertisedFeedTypes' => [ 'atom', ], 'RCShowWatchingUsers' => false, 'RCShowChangedSize' => true, 'RCChangedSizeThreshold' => 500, 'ShowUpdatedMarker' => true, 'DisableAnonTalk' => false, 'UseTagFilter' => true, 'SoftwareTags' => [ 'mw-contentmodelchange' => true, 'mw-new-redirect' => true, 'mw-removed-redirect' => true, 'mw-changed-redirect-target' => true, 'mw-blank' => true, 'mw-replace' => true, 'mw-recreated' => true, 'mw-rollback' => true, 'mw-undo' => true, 'mw-manual-revert' => true, 'mw-reverted' => true, 'mw-server-side-upload' => true, 'mw-ipblock-appeal' => true, 'mw-edited-other-users-js' => true, 'mw-edited-other-users-css' => true, ], 'RestrictedTagViewRights' => [ ], 'UnwatchedPageThreshold' => false, 'RecentChangesFlags' => [ 'newpage' => [ 'letter' => 'newpageletter', 'title' => 'recentchanges-label-newpage', 'legend' => 'recentchanges-legend-newpage', 'grouping' => 'any', ], 'minor' => [ 'letter' => 'minoreditletter', 'title' => 'recentchanges-label-minor', 'legend' => 'recentchanges-legend-minor', 'class' => 'minoredit', 'grouping' => 'all', ], 'bot' => [ 'letter' => 'boteditletter', 'title' => 'recentchanges-label-bot', 'legend' => 'recentchanges-legend-bot', 'class' => 'botedit', 'grouping' => 'all', ], 'unpatrolled' => [ 'letter' => 'unpatrolledletter', 'title' => 'recentchanges-label-unpatrolled', 'legend' => 'recentchanges-legend-unpatrolled', 'grouping' => 'any', ], ], 'WatchlistExpiry' => false, 'EnableWatchstarPopover' => false, 'EnableWatchlistLabels' => false, 'WatchlistLabelsMaxPerUser' => 100, 'WatchlistPurgeRate' => 0.1, 'WatchlistExpiryMaxDuration' => '1 year', 'EnableChangesListQueryPartitioning' => false, 'RightsPage' => null, 'RightsUrl' => null, 'RightsText' => null, 'RightsIcon' => null, 'UseCopyrightUpload' => false, 'MaxCredits' => 0, 'ShowCreditsIfMax' => true, 'ImportSources' => [ ], 'ImportTargetNamespace' => null, 'ExportAllowHistory' => true, 'ExportMaxHistory' => 0, 'ExportAllowListContributors' => false, 'ExportMaxLinkDepth' => 0, 'ExportFromNamespaces' => false, 'ExportAllowAll' => false, 'ExportPagelistLimit' => 5000, 'XmlDumpSchemaVersion' => '0.11', 'WikiFarmSettingsDirectory' => null, 'WikiFarmSettingsExtension' => 'yaml', 'ExtensionFunctions' => [ ], 'ExtensionMessagesFiles' => [ ], 'MessagesDirs' => [ ], 'TranslationAliasesDirs' => [ ], 'ExtensionEntryPointListFiles' => [ ], 'EnableParserLimitReporting' => true, 'ValidSkinNames' => [ ], 'SpecialPages' => [ ], 'ExtensionCredits' => [ ], 'Hooks' => [ ], 'ServiceWiringFiles' => [ ], 'JobClasses' => [ 'deletePage' => 'MediaWiki\\Page\\DeletePageJob', 'refreshLinks' => 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob', 'deleteLinks' => 'MediaWiki\\Page\\DeleteLinksJob', 'htmlCacheUpdate' => 'MediaWiki\\JobQueue\\Jobs\\HTMLCacheUpdateJob', 'sendMail' => [ 'class' => 'MediaWiki\\Mail\\EmaillingJob', 'services' => [ 'Emailer', ], ], 'enotifNotify' => [ 'class' => 'MediaWiki\\RecentChanges\\RecentChangeNotifyJob', 'services' => [ 'RecentChangeLookup', ], ], 'fixDoubleRedirect' => [ 'class' => 'MediaWiki\\JobQueue\\Jobs\\DoubleRedirectJob', 'services' => [ 'RevisionLookup', 'MagicWordFactory', 'WikiPageFactory', ], 'needsPage' => true, ], 'AssembleUploadChunks' => 'MediaWiki\\JobQueue\\Jobs\\AssembleUploadChunksJob', 'PublishStashedFile' => 'MediaWiki\\JobQueue\\Jobs\\PublishStashedFileJob', 'ThumbnailRender' => 'MediaWiki\\JobQueue\\Jobs\\ThumbnailRenderJob', 'UploadFromUrl' => 'MediaWiki\\JobQueue\\Jobs\\UploadFromUrlJob', 'recentChangesUpdate' => 'MediaWiki\\RecentChanges\\RecentChangesUpdateJob', 'refreshLinksPrioritized' => 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob', 'refreshLinksDynamic' => 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob', 'activityUpdateJob' => 'MediaWiki\\Watchlist\\ActivityUpdateJob', 'categoryMembershipChange' => [ 'class' => 'MediaWiki\\RecentChanges\\CategoryMembershipChangeJob', 'services' => [ 'RecentChangeFactory', ], ], 'CategoryCountUpdateJob' => [ 'class' => 'MediaWiki\\JobQueue\\Jobs\\CategoryCountUpdateJob', 'services' => [ 'ConnectionProvider', 'NamespaceInfo', ], ], 'clearUserWatchlist' => 'MediaWiki\\Watchlist\\ClearUserWatchlistJob', 'watchlistExpiry' => 'MediaWiki\\Watchlist\\WatchlistExpiryJob', 'cdnPurge' => 'MediaWiki\\JobQueue\\Jobs\\CdnPurgeJob', 'userGroupExpiry' => 'MediaWiki\\User\\UserGroupExpiryJob', 'clearWatchlistNotifications' => 'MediaWiki\\Watchlist\\ClearWatchlistNotificationsJob', 'userOptionsUpdate' => 'MediaWiki\\User\\Options\\UserOptionsUpdateJob', 'revertedTagUpdate' => 'MediaWiki\\JobQueue\\Jobs\\RevertedTagUpdateJob', 'null' => 'MediaWiki\\JobQueue\\Jobs\\NullJob', 'userEditCountInit' => 'MediaWiki\\User\\UserEditCountInitJob', 'parsoidCachePrewarm' => [ 'class' => 'MediaWiki\\JobQueue\\Jobs\\ParsoidCachePrewarmJob', 'services' => [ 'ParserOutputAccess', 'PageStore', 'RevisionLookup', 'ParsoidSiteConfig', ], 'needsPage' => false, ], 'renameUserTable' => [ 'class' => 'MediaWiki\\RenameUser\\Job\\RenameUserTableJob', 'services' => [ 'MainConfig', 'DBLoadBalancerFactory', ], ], 'renameUserDerived' => [ 'class' => 'MediaWiki\\RenameUser\\Job\\RenameUserDerivedJob', 'services' => [ 'RenameUserFactory', 'UserFactory', ], ], 'renameUser' => [ 'class' => 'MediaWiki\\RenameUser\\Job\\RenameUserTableJob', 'services' => [ 'MainConfig', 'DBLoadBalancerFactory', ], ], ], 'JobTypesExcludedFromDefaultQueue' => [ 'AssembleUploadChunks', 'PublishStashedFile', 'UploadFromUrl', ], 'JobBackoffThrottling' => [ ], 'JobTypeConf' => [ 'default' => [ 'class' => 'MediaWiki\\JobQueue\\JobQueueDB', 'order' => 'random', 'claimTTL' => 3600, ], ], 'JobQueueIncludeInMaxLagFactor' => false, 'SpecialPageCacheUpdates' => [ 'Statistics' => [ 'MediaWiki\\Deferred\\SiteStatsUpdate', 'cacheUpdate', ], ], 'PagePropLinkInvalidations' => [ 'hiddencat' => 'categorylinks', ], 'CategoryMagicGallery' => true, 'CategoryPagingLimit' => 200, 'CategoryCollation' => 'uppercase', 'TempCategoryCollations' => [ ], 'SortedCategories' => false, 'TrackingCategories' => [ ], 'LogTypes' => [ '', 'block', 'protect', 'rights', 'delete', 'upload', 'move', 'import', 'interwiki', 'patrol', 'merge', 'suppress', 'tag', 'managetags', 'contentmodel', 'renameuser', ], 'LogRestrictions' => [ 'suppress' => 'suppressionlog', ], 'FilterLogTypes' => [ 'patrol' => true, 'tag' => true, 'newusers' => false, ], 'LogNames' => [ '' => 'all-logs-page', 'block' => 'blocklogpage', 'protect' => 'protectlogpage', 'rights' => 'rightslog', 'delete' => 'dellogpage', 'upload' => 'uploadlogpage', 'move' => 'movelogpage', 'import' => 'importlogpage', 'patrol' => 'patrol-log-page', 'merge' => 'mergelog', 'suppress' => 'suppressionlog', ], 'LogHeaders' => [ '' => 'alllogstext', 'block' => 'blocklogtext', 'delete' => 'dellogpagetext', 'import' => 'importlogpagetext', 'merge' => 'mergelogpagetext', 'move' => 'movelogpagetext', 'patrol' => 'patrol-log-header', 'protect' => 'protectlogtext', 'rights' => 'rightslogtext', 'suppress' => 'suppressionlogtext', 'upload' => 'uploadlogpagetext', ], 'LogActions' => [ ], 'LogActionsHandlers' => [ 'block/block' => [ 'class' => 'MediaWiki\\Logging\\BlockLogFormatter', 'services' => [ 'TitleParser', 'NamespaceInfo', ], ], 'block/reblock' => [ 'class' => 'MediaWiki\\Logging\\BlockLogFormatter', 'services' => [ 'TitleParser', 'NamespaceInfo', ], ], 'block/unblock' => [ 'class' => 'MediaWiki\\Logging\\BlockLogFormatter', 'services' => [ 'TitleParser', 'NamespaceInfo', ], ], 'contentmodel/change' => 'MediaWiki\\Logging\\ContentModelLogFormatter', 'contentmodel/new' => 'MediaWiki\\Logging\\ContentModelLogFormatter', 'delete/delete' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'delete/delete_redir' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'delete/delete_redir2' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'delete/event' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'delete/restore' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'delete/revision' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'import/interwiki' => 'MediaWiki\\Logging\\ImportLogFormatter', 'import/upload' => 'MediaWiki\\Logging\\ImportLogFormatter', 'interwiki/iw_add' => 'MediaWiki\\Logging\\InterwikiLogFormatter', 'interwiki/iw_delete' => 'MediaWiki\\Logging\\InterwikiLogFormatter', 'interwiki/iw_edit' => 'MediaWiki\\Logging\\InterwikiLogFormatter', 'managetags/activate' => 'MediaWiki\\Logging\\LogFormatter', 'managetags/create' => 'MediaWiki\\Logging\\LogFormatter', 'managetags/deactivate' => 'MediaWiki\\Logging\\LogFormatter', 'managetags/delete' => 'MediaWiki\\Logging\\LogFormatter', 'merge/merge' => [ 'class' => 'MediaWiki\\Logging\\MergeLogFormatter', 'services' => [ 'TitleParser', ], ], 'merge/merge-into' => [ 'class' => 'MediaWiki\\Logging\\MergeLogFormatter', 'services' => [ 'TitleParser', ], ], 'move/move' => [ 'class' => 'MediaWiki\\Logging\\MoveLogFormatter', 'services' => [ 'TitleParser', ], ], 'move/move_redir' => [ 'class' => 'MediaWiki\\Logging\\MoveLogFormatter', 'services' => [ 'TitleParser', ], ], 'patrol/patrol' => 'MediaWiki\\Logging\\PatrolLogFormatter', 'patrol/autopatrol' => 'MediaWiki\\Logging\\PatrolLogFormatter', 'protect/modify' => [ 'class' => 'MediaWiki\\Logging\\ProtectLogFormatter', 'services' => [ 'TitleParser', ], ], 'protect/move_prot' => [ 'class' => 'MediaWiki\\Logging\\ProtectLogFormatter', 'services' => [ 'TitleParser', ], ], 'protect/protect' => [ 'class' => 'MediaWiki\\Logging\\ProtectLogFormatter', 'services' => [ 'TitleParser', ], ], 'protect/unprotect' => [ 'class' => 'MediaWiki\\Logging\\ProtectLogFormatter', 'services' => [ 'TitleParser', ], ], 'renameuser/renameuser' => [ 'class' => 'MediaWiki\\Logging\\RenameuserLogFormatter', 'services' => [ 'TitleParser', ], ], 'rights/autopromote' => 'MediaWiki\\Logging\\RightsLogFormatter', 'rights/rights' => 'MediaWiki\\Logging\\RightsLogFormatter', 'suppress/block' => [ 'class' => 'MediaWiki\\Logging\\BlockLogFormatter', 'services' => [ 'TitleParser', 'NamespaceInfo', ], ], 'suppress/delete' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'suppress/event' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'suppress/reblock' => [ 'class' => 'MediaWiki\\Logging\\BlockLogFormatter', 'services' => [ 'TitleParser', 'NamespaceInfo', ], ], 'suppress/revision' => 'MediaWiki\\Logging\\DeleteLogFormatter', 'tag/update' => 'MediaWiki\\Logging\\TagLogFormatter', 'upload/overwrite' => 'MediaWiki\\Logging\\UploadLogFormatter', 'upload/revert' => 'MediaWiki\\Logging\\UploadLogFormatter', 'upload/upload' => 'MediaWiki\\Logging\\UploadLogFormatter', ], 'ActionFilteredLogs' => [ 'block' => [ 'block' => [ 'block', ], 'reblock' => [ 'reblock', ], 'unblock' => [ 'unblock', ], ], 'contentmodel' => [ 'change' => [ 'change', ], 'new' => [ 'new', ], ], 'delete' => [ 'delete' => [ 'delete', ], 'delete_redir' => [ 'delete_redir', 'delete_redir2', ], 'restore' => [ 'restore', ], 'event' => [ 'event', ], 'revision' => [ 'revision', ], ], 'import' => [ 'interwiki' => [ 'interwiki', ], 'upload' => [ 'upload', ], ], 'managetags' => [ 'create' => [ 'create', ], 'delete' => [ 'delete', ], 'activate' => [ 'activate', ], 'deactivate' => [ 'deactivate', ], ], 'move' => [ 'move' => [ 'move', ], 'move_redir' => [ 'move_redir', ], ], 'newusers' => [ 'create' => [ 'create', 'newusers', ], 'create2' => [ 'create2', ], 'autocreate' => [ 'autocreate', ], 'byemail' => [ 'byemail', ], ], 'protect' => [ 'protect' => [ 'protect', ], 'modify' => [ 'modify', ], 'unprotect' => [ 'unprotect', ], 'move_prot' => [ 'move_prot', ], ], 'rights' => [ 'rights' => [ 'rights', ], 'autopromote' => [ 'autopromote', ], ], 'suppress' => [ 'event' => [ 'event', ], 'revision' => [ 'revision', ], 'delete' => [ 'delete', ], 'block' => [ 'block', ], 'reblock' => [ 'reblock', ], ], 'upload' => [ 'upload' => [ 'upload', ], 'overwrite' => [ 'overwrite', ], 'revert' => [ 'revert', ], ], ], 'NewUserLog' => true, 'PageCreationLog' => true, 'AllowSpecialInclusion' => true, 'DisableQueryPageUpdate' => false, 'CountCategorizedImagesAsUsed' => false, 'MaxRedirectLinksRetrieved' => 500, 'RangeContributionsCIDRLimit' => [ 'IPv4' => 16, 'IPv6' => 32, ], 'Actions' => [ ], 'DefaultRobotPolicy' => 'index,follow', 'NamespaceRobotPolicies' => [ ], 'ArticleRobotPolicies' => [ ], 'ExemptFromUserRobotsControl' => null, 'DebugAPI' => false, 'APIModules' => [ ], 'APIFormatModules' => [ ], 'APIMetaModules' => [ ], 'APIPropModules' => [ ], 'APIListModules' => [ ], 'APIMaxDBRows' => 5000, 'APIMaxResultSize' => 8388608, 'APIMaxUncachedDiffs' => 1, 'APIMaxLagThreshold' => 7, 'APICacheHelpTimeout' => 3600, 'APIUselessQueryPages' => [ 'MIMEsearch', 'LinkSearch', ], 'AjaxLicensePreview' => true, 'CrossSiteAJAXdomains' => [ ], 'CrossSiteAJAXdomainExceptions' => [ ], 'AllowedCorsHeaders' => [ 'Accept', 'Accept-Language', 'Content-Language', 'Content-Type', 'Accept-Encoding', 'DNT', 'Origin', 'User-Agent', 'Api-User-Agent', 'Promise-Non-Write-API-Action', 'Access-Control-Max-Age', 'Authorization', ], 'RestAPIAdditionalRouteFiles' => [ ], 'RestSandboxSpecs' => [ ], 'RestLocalModuleTestBaseUrl' => null, 'RestModuleOverrides' => [ ], 'RestExternalModules' => [ ], 'MaxShellMemory' => 307200, 'MaxShellFileSize' => 102400, 'MaxShellTime' => 180, 'MaxShellWallClockTime' => 180, 'ShellCgroup' => false, 'PhpCli' => '/usr/bin/php', 'ShellRestrictionMethod' => 'autodetect', 'ShellboxUrls' => [ 'default' => null, ], 'ShellboxSecretKey' => null, 'ShellboxShell' => '/bin/sh', 'HTTPTimeout' => 25, 'HTTPConnectTimeout' => 5.0, 'HTTPMaxTimeout' => 0, 'HTTPMaxConnectTimeout' => 0, 'HTTPImportTimeout' => 25, 'AsyncHTTPTimeout' => 25, 'HTTPProxy' => '', 'LocalVirtualHosts' => [ ], 'LocalHTTPProxy' => false, 'AllowExternalReqID' => false, 'GenerateReqIDFormat' => 'rand24', 'JobRunRate' => 1, 'RunJobsAsync' => false, 'UpdateRowsPerJob' => 300, 'UpdateRowsPerQuery' => 100, 'RedirectOnLogin' => null, 'VirtualRestConfig' => [ 'paths' => [ ], 'modules' => [ ], 'global' => [ 'timeout' => 360, 'forwardCookies' => false, 'HTTPProxy' => null, ], ], 'EventRelayerConfig' => [ 'default' => [ 'class' => 'Wikimedia\\EventRelayer\\EventRelayerNull', ], ], 'Pingback' => false, 'OriginTrials' => [ ], 'ReportToExpiry' => 86400, 'ReportToEndpoints' => [ ], 'FeaturePolicyReportOnly' => [ ], 'SkinsPreferred' => [ 'vector-2022', 'vector', ], 'SpecialContributeSkinsEnabled' => [ ], 'SpecialContributeNewPageTarget' => null, 'EnableEditRecovery' => false, 'EditRecoveryExpiry' => 2592000, 'UseCodexSpecialBlock' => false, 'ShowLogoutConfirmation' => false, 'EnableProtectionIndicators' => true, 'OutputPipelineStages' => [ ], 'FeatureShutdown' => [ ], 'CloneArticleParserOutput' => true, 'UseLeximorph' => false, 'UsePostprocCacheLegacy' => false, 'UsePostprocCacheParsoid' => true, 'ParserOptionsLogUnsafeSampleRate' => 0, 'ReturnExperimentalPFragmentTypes' => [ ], ], 'type' => [ 'ConfigRegistry' => 'object', 'AssumeProxiesUseDefaultProtocolPorts' => 'boolean', 'ForceHTTPS' => 'boolean', 'ExtensionDirectory' => [ 'string', 'null', ], 'StyleDirectory' => [ 'string', 'null', ], 'UploadDirectory' => [ 'string', 'boolean', 'null', ], 'Logos' => [ 'object', 'boolean', ], 'ReferrerPolicy' => [ 'array', 'string', 'boolean', ], 'ActionPaths' => 'object', 'MainPageIsDomainRoot' => 'boolean', 'ImgAuthUrlPathMap' => 'object', 'LocalFileRepo' => 'object', 'ForeignFileRepos' => 'array', 'UseSharedUploads' => 'boolean', 'SharedUploadDirectory' => [ 'string', 'null', ], 'SharedUploadPath' => [ 'string', 'null', ], 'HashedSharedUploadDirectory' => 'boolean', 'FetchCommonsDescriptions' => 'boolean', 'SharedUploadDBname' => [ 'boolean', 'string', ], 'SharedUploadDBprefix' => 'string', 'CacheSharedUploads' => 'boolean', 'ForeignUploadTargets' => 'array', 'UploadDialog' => 'object', 'FileBackends' => 'object', 'LockManagers' => 'array', 'DefaultLockManager' => [ 'string', 'null', ], 'CopyUploadsDomains' => 'array', 'CopyUploadTimeout' => [ 'boolean', 'integer', ], 'SharedThumbnailScriptPath' => [ 'string', 'boolean', ], 'HashedUploadDirectory' => 'boolean', 'CSPUploadEntryPoint' => 'boolean', 'FileExtensions' => 'array', 'ProhibitedFileExtensions' => 'array', 'MimeTypeExclusions' => 'array', 'TrustedMediaFormats' => 'array', 'MediaHandlers' => 'object', 'NativeImageLazyLoading' => 'boolean', 'ParserTestMediaHandlers' => 'object', 'MaxInterlacingAreas' => 'object', 'SVGConverters' => 'object', 'SVGNativeRendering' => [ 'string', 'boolean', ], 'MaxImageArea' => [ 'string', 'integer', 'boolean', ], 'TiffThumbnailType' => 'array', 'GenerateThumbnailOnParse' => 'boolean', 'EnableAutoRotation' => [ 'boolean', 'null', ], 'Antivirus' => [ 'string', 'null', ], 'AntivirusSetup' => 'object', 'MimeDetectorCommand' => [ 'string', 'null', ], 'XMLMimeTypes' => 'object', 'ImageLimits' => 'array', 'ThumbLimits' => 'array', 'ThumbnailNamespaces' => 'array', 'ThumbnailSteps' => [ 'array', 'null', ], 'ThumbnailBuckets' => [ 'array', 'null', ], 'UploadThumbnailRenderMap' => 'object', 'GalleryOptions' => 'object', 'DjvuDump' => [ 'string', 'null', ], 'DjvuRenderer' => [ 'string', 'null', ], 'DjvuTxt' => [ 'string', 'null', ], 'DjvuPostProcessor' => [ 'string', 'null', ], 'RestTermsOfServiceUrl' => [ 'string', 'null', ], 'SMTP' => [ 'boolean', 'object', ], 'EnotifFromEditor' => 'boolean', 'EmailConfirmationBanner' => 'boolean', 'EnotifRevealEditorAddress' => 'boolean', 'UsersNotifiedOnAllChanges' => 'object', 'DBmwschema' => [ 'string', 'null', ], 'SharedTables' => 'array', 'DBservers' => [ 'boolean', 'array', ], 'LBFactoryConf' => 'object', 'LocalDatabases' => 'array', 'VirtualDomainsMapping' => 'object', 'FileSchemaMigrationStage' => 'integer', 'ExternalLinksDomainGaps' => 'object', 'ContentHandlers' => 'object', 'NamespaceContentModels' => 'object', 'TextModelsToParse' => 'array', 'ExternalStores' => 'array', 'ExternalServers' => 'object', 'DefaultExternalStore' => [ 'array', 'boolean', ], 'RevisionCacheExpiry' => 'integer', 'PageLanguageUseDB' => 'boolean', 'DiffEngine' => [ 'string', 'null', ], 'ExternalDiffEngine' => [ 'string', 'boolean', ], 'Wikidiff2Options' => 'object', 'RequestTimeLimit' => [ 'integer', 'null', ], 'CriticalSectionTimeLimit' => 'number', 'PoolCounterConf' => [ 'object', 'null', ], 'PoolCountClientConf' => 'object', 'MaxUserDBWriteDuration' => [ 'integer', 'boolean', ], 'MaxJobDBWriteDuration' => [ 'integer', 'boolean', ], 'MultiShardSiteStats' => 'boolean', 'ObjectCaches' => 'object', 'WANObjectCache' => 'object', 'MicroStashType' => [ 'string', 'integer', ], 'ParsoidCacheConfig' => 'object', 'ParsoidSelectiveUpdateSampleRate' => 'integer', 'ParserCacheFilterConfig' => 'object', 'ChronologyProtectorSecret' => 'string', 'PHPSessionHandling' => 'string', 'SuspiciousIpExpiry' => [ 'integer', 'boolean', ], 'MemCachedServers' => 'array', 'LocalisationCacheConf' => 'object', 'ExtensionInfoMTime' => [ 'integer', 'boolean', ], 'CdnServers' => 'object', 'CdnServersNoPurge' => 'object', 'HTCPRouting' => 'object', 'GrammarForms' => 'object', 'ExtraInterlanguageLinkPrefixes' => 'array', 'InterlanguageLinkCodeMap' => 'object', 'ExtraLanguageNames' => 'object', 'ExtraLanguageCodes' => 'object', 'DummyLanguageCodes' => 'object', 'DisabledVariants' => 'object', 'ForceUIMsgAsContentMsg' => 'object', 'RawHtmlMessages' => 'array', 'OverrideUcfirstCharacters' => 'object', 'XhtmlNamespaces' => 'object', 'BrowserFormatDetection' => 'string', 'SkinMetaTags' => 'object', 'SkipSkins' => 'object', 'FragmentMode' => 'array', 'FooterIcons' => 'object', 'InterwikiLogoOverride' => 'array', 'ResourceModules' => 'object', 'ResourceModuleSkinStyles' => 'object', 'ResourceLoaderSources' => 'object', 'ResourceLoaderMaxage' => 'object', 'ResourceLoaderMaxQueryLength' => [ 'integer', 'boolean', ], 'CanonicalNamespaceNames' => 'object', 'ExtraNamespaces' => 'object', 'ExtraGenderNamespaces' => 'object', 'NamespaceAliases' => 'object', 'CapitalLinkOverrides' => 'object', 'NamespacesWithSubpages' => 'object', 'NamespacesWithoutAutoSummaries' => 'array', 'ContentNamespaces' => 'array', 'ShortPagesNamespaceExclusions' => 'array', 'ExtraSignatureNamespaces' => 'array', 'InvalidRedirectTargets' => 'array', 'LocalInterwikis' => 'array', 'InterwikiCache' => [ 'boolean', 'object', ], 'SiteTypes' => 'object', 'UrlProtocols' => 'array', 'TidyConfig' => 'object', 'ParsoidSettings' => 'object', 'ParsoidExperimentalParserFunctionOutput' => 'boolean', 'NoFollowNsExceptions' => 'array', 'NoFollowDomainExceptions' => 'array', 'ExternalLinksIgnoreDomains' => 'array', 'EnableMagicLinks' => 'object', 'ManualRevertSearchRadius' => 'integer', 'RevertedTagMaxDepth' => 'integer', 'CentralIdLookupProviders' => 'object', 'CentralIdLookupProvider' => 'string', 'UserRegistrationProviders' => 'object', 'PasswordPolicy' => 'object', 'AuthManagerConfig' => [ 'object', 'null', ], 'AuthManagerAutoConfig' => 'object', 'RememberMe' => 'string', 'ReauthenticateTime' => 'object', 'ChangeCredentialsBlacklist' => 'array', 'RemoveCredentialsBlacklist' => 'array', 'PasswordConfig' => 'object', 'PasswordResetRoutes' => 'object', 'SignatureAllowedLintErrors' => 'array', 'ReservedUsernames' => 'array', 'DefaultUserOptions' => 'object', 'ConditionalUserOptions' => 'object', 'HiddenPrefs' => 'array', 'UserJsPrefLimit' => 'integer', 'AuthenticationTokenVersion' => [ 'string', 'null', ], 'SessionProviders' => 'object', 'AutoCreateTempUser' => 'object', 'AutoblockExemptions' => 'array', 'BlockCIDRLimit' => 'object', 'EnableMultiBlocks' => 'boolean', 'GroupPermissions' => 'object', 'PrivilegedGroups' => 'array', 'RevokePermissions' => 'object', 'GroupInheritsPermissions' => 'object', 'ImplicitGroups' => 'array', 'GroupsAddToSelf' => 'object', 'GroupsRemoveFromSelf' => 'object', 'RestrictedGroups' => 'object', 'UserRequirementsPrivateConditions' => 'array', 'RestrictionTypes' => 'array', 'RestrictionLevels' => 'array', 'CascadingRestrictionLevels' => 'array', 'SemiprotectedRestrictionLevels' => 'array', 'NamespaceProtection' => 'object', 'RestrictUserPageEditing' => 'boolean', 'NonincludableNamespaces' => 'object', 'Autopromote' => 'object', 'AutopromoteOnce' => 'object', 'AutopromoteOnceRCExcludedGroups' => 'array', 'AddGroups' => 'object', 'RemoveGroups' => 'object', 'AvailableRights' => 'array', 'ImplicitRights' => 'array', 'AccountCreationThrottle' => [ 'integer', 'array', ], 'TempAccountCreationThrottle' => 'array', 'TempAccountNameAcquisitionThrottle' => 'array', 'SpamRegex' => 'array', 'SummarySpamRegex' => 'array', 'DnsBlacklistUrls' => 'array', 'ProxyList' => [ 'string', 'array', ], 'ProxyWhitelist' => 'array', 'SoftBlockRanges' => 'array', 'RateLimits' => 'object', 'RateLimitsExcludedIPs' => 'array', 'ExternalQuerySources' => 'object', 'PasswordAttemptThrottle' => 'array', 'GrantPermissions' => 'object', 'GrantPermissionGroups' => 'object', 'GrantRiskGroups' => 'object', 'EnableBotPasswords' => 'boolean', 'BotPasswordsCluster' => [ 'string', 'boolean', ], 'BotPasswordsDatabase' => [ 'string', 'boolean', ], 'BotPasswordsLimit' => 'integer', 'ReauthenticateForActions' => 'object', 'CSPHeader' => [ 'boolean', 'object', ], 'CSPReportOnlyHeader' => [ 'boolean', 'object', ], 'CSPUseReportURIDirective' => [ 'boolean', 'object', ], 'CSPFalsePositiveUrls' => 'object', 'AllowCrossOrigin' => 'boolean', 'RestAllowCrossOriginCookieAuth' => 'boolean', 'CookieSameSite' => [ 'string', 'null', ], 'CacheVaryCookies' => 'array', 'TrxProfilerLimits' => 'object', 'DebugLogGroups' => 'object', 'MWLoggerDefaultSpi' => 'object', 'Profiler' => 'object', 'StatsTarget' => [ 'string', 'null', ], 'StatsFormat' => [ 'string', 'null', ], 'StatsPrefix' => 'string', 'OpenTelemetryConfig' => [ 'object', 'null', ], 'OpenSearchTemplates' => 'object', 'NamespacesToBeSearchedDefault' => 'object', 'SitemapNamespaces' => [ 'boolean', 'array', ], 'SitemapNamespacesPriorities' => [ 'boolean', 'object', ], 'SitemapApiConfig' => 'object', 'SpecialSearchFormOptions' => 'object', 'SearchMatchRedirectPreference' => 'boolean', 'SearchRunSuggestedQuery' => 'boolean', 'PreviewOnOpenNamespaces' => 'object', 'ReadOnlyWatchedItemStore' => 'boolean', 'GitRepositoryViewers' => 'object', 'InstallerInitialPages' => 'array', 'RCLinkLimits' => 'array', 'RCLinkDays' => 'array', 'RCFeeds' => 'object', 'OverrideSiteFeed' => 'object', 'FeedClasses' => 'object', 'AdvertisedFeedTypes' => 'array', 'SoftwareTags' => 'object', 'RestrictedTagViewRights' => 'object', 'RecentChangesFlags' => 'object', 'WatchlistExpiry' => 'boolean', 'EnableWatchstarPopover' => 'boolean', 'EnableWatchlistLabels' => 'boolean', 'WatchlistLabelsMaxPerUser' => 'integer', 'WatchlistPurgeRate' => 'number', 'WatchlistExpiryMaxDuration' => [ 'string', 'null', ], 'EnableChangesListQueryPartitioning' => 'boolean', 'ImportSources' => 'object', 'ExtensionFunctions' => 'array', 'ExtensionMessagesFiles' => 'object', 'MessagesDirs' => 'object', 'TranslationAliasesDirs' => 'object', 'ExtensionEntryPointListFiles' => 'object', 'ValidSkinNames' => 'object', 'SpecialPages' => 'object', 'ExtensionCredits' => 'object', 'Hooks' => 'object', 'ServiceWiringFiles' => 'array', 'JobClasses' => 'object', 'JobTypesExcludedFromDefaultQueue' => 'array', 'JobBackoffThrottling' => 'object', 'JobTypeConf' => 'object', 'SpecialPageCacheUpdates' => 'object', 'PagePropLinkInvalidations' => 'object', 'TempCategoryCollations' => 'array', 'SortedCategories' => 'boolean', 'TrackingCategories' => 'array', 'LogTypes' => 'array', 'LogRestrictions' => 'object', 'FilterLogTypes' => 'object', 'LogNames' => 'object', 'LogHeaders' => 'object', 'LogActions' => 'object', 'LogActionsHandlers' => 'object', 'ActionFilteredLogs' => 'object', 'RangeContributionsCIDRLimit' => 'object', 'Actions' => 'object', 'NamespaceRobotPolicies' => 'object', 'ArticleRobotPolicies' => 'object', 'ExemptFromUserRobotsControl' => [ 'array', 'null', ], 'APIModules' => 'object', 'APIFormatModules' => 'object', 'APIMetaModules' => 'object', 'APIPropModules' => 'object', 'APIListModules' => 'object', 'APIUselessQueryPages' => 'array', 'CrossSiteAJAXdomains' => 'object', 'CrossSiteAJAXdomainExceptions' => 'object', 'AllowedCorsHeaders' => 'array', 'RestAPIAdditionalRouteFiles' => 'array', 'RestSandboxSpecs' => 'object', 'RestLocalModuleTestBaseUrl' => [ 'string', 'null', ], 'RestModuleOverrides' => 'object', 'RestExternalModules' => 'object', 'ShellRestrictionMethod' => [ 'string', 'boolean', ], 'ShellboxUrls' => 'object', 'ShellboxSecretKey' => [ 'string', 'null', ], 'ShellboxShell' => [ 'string', 'null', ], 'HTTPTimeout' => 'number', 'HTTPConnectTimeout' => 'number', 'HTTPMaxTimeout' => 'number', 'HTTPMaxConnectTimeout' => 'number', 'LocalVirtualHosts' => 'object', 'LocalHTTPProxy' => [ 'string', 'boolean', ], 'GenerateReqIDFormat' => 'string', 'VirtualRestConfig' => 'object', 'EventRelayerConfig' => 'object', 'Pingback' => 'boolean', 'OriginTrials' => 'array', 'ReportToExpiry' => 'integer', 'ReportToEndpoints' => 'array', 'FeaturePolicyReportOnly' => 'array', 'SkinsPreferred' => 'array', 'SpecialContributeSkinsEnabled' => 'array', 'SpecialContributeNewPageTarget' => [ 'string', 'null', ], 'EnableEditRecovery' => 'boolean', 'EditRecoveryExpiry' => 'integer', 'UseCodexSpecialBlock' => 'boolean', 'ShowLogoutConfirmation' => 'boolean', 'EnableProtectionIndicators' => 'boolean', 'OutputPipelineStages' => 'object', 'FeatureShutdown' => 'array', 'CloneArticleParserOutput' => 'boolean', 'UseLeximorph' => 'boolean', 'UsePostprocCacheLegacy' => 'boolean', 'UsePostprocCacheParsoid' => 'boolean', 'ParserOptionsLogUnsafeSampleRate' => 'integer', 'ReturnExperimentalPFragmentTypes' => 'array', ], 'mergeStrategy' => [ 'TiffThumbnailType' => 'replace', 'LBFactoryConf' => 'replace', 'InterwikiCache' => 'replace', 'PasswordPolicy' => 'array_replace_recursive', 'AuthManagerAutoConfig' => 'array_plus_2d', 'GroupPermissions' => 'array_plus_2d', 'RevokePermissions' => 'array_plus_2d', 'AddGroups' => 'array_merge_recursive', 'RemoveGroups' => 'array_merge_recursive', 'RateLimits' => 'array_plus_2d', 'GrantPermissions' => 'array_plus_2d', 'MWLoggerDefaultSpi' => 'replace', 'Profiler' => 'replace', 'Hooks' => 'array_merge_recursive', 'RestModuleOverrides' => 'array_replace_recursive', 'RestExternalModules' => 'array_replace_recursive', 'VirtualRestConfig' => 'array_plus_2d', ], 'dynamicDefault' => [ 'UsePathInfo' => [ 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultUsePathInfo', ], ], 'Script' => [ 'use' => [ 'ScriptPath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultScript', ], ], 'LoadScript' => [ 'use' => [ 'ScriptPath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultLoadScript', ], ], 'RestPath' => [ 'use' => [ 'ScriptPath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultRestPath', ], ], 'StylePath' => [ 'use' => [ 'ResourceBasePath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultStylePath', ], ], 'LocalStylePath' => [ 'use' => [ 'ScriptPath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultLocalStylePath', ], ], 'ExtensionAssetsPath' => [ 'use' => [ 'ResourceBasePath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultExtensionAssetsPath', ], ], 'ArticlePath' => [ 'use' => [ 'Script', 'UsePathInfo', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultArticlePath', ], ], 'UploadPath' => [ 'use' => [ 'ScriptPath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultUploadPath', ], ], 'FileCacheDirectory' => [ 'use' => [ 'UploadDirectory', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultFileCacheDirectory', ], ], 'Logo' => [ 'use' => [ 'ResourceBasePath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultLogo', ], ], 'DeletedDirectory' => [ 'use' => [ 'UploadDirectory', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultDeletedDirectory', ], ], 'ShowEXIF' => [ 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultShowEXIF', ], ], 'SharedPrefix' => [ 'use' => [ 'DBprefix', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultSharedPrefix', ], ], 'SharedSchema' => [ 'use' => [ 'DBmwschema', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultSharedSchema', ], ], 'DBerrorLogTZ' => [ 'use' => [ 'Localtimezone', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultDBerrorLogTZ', ], ], 'Localtimezone' => [ 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultLocaltimezone', ], ], 'LocalTZoffset' => [ 'use' => [ 'Localtimezone', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultLocalTZoffset', ], ], 'ResourceBasePath' => [ 'use' => [ 'ScriptPath', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultResourceBasePath', ], ], 'MetaNamespace' => [ 'use' => [ 'Sitename', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultMetaNamespace', ], ], 'CookieSecure' => [ 'use' => [ 'ForceHTTPS', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultCookieSecure', ], ], 'CookiePrefix' => [ 'use' => [ 'SharedDB', 'SharedPrefix', 'SharedTables', 'DBname', 'DBprefix', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultCookiePrefix', ], ], 'ReadOnlyFile' => [ 'use' => [ 'UploadDirectory', ], 'callback' => [ 'MediaWiki\\MainConfigSchema', 'getDefaultReadOnlyFile', ], ], ], ], 'config-schema' => [ 'UploadStashScalerBaseUrl' => [ 'deprecated' => 'since 1.36 Use thumbProxyUrl in $wgLocalFileRepo', ], 'IllegalFileChars' => [ 'deprecated' => 'since 1.41; no longer customizable', ], 'ThumbnailNamespaces' => [ 'items' => [ 'type' => 'integer', ], ], 'LocalDatabases' => [ 'items' => [ 'type' => 'string', ], ], 'ParserCacheFilterConfig' => [ 'additionalProperties' => [ 'type' => 'object', 'description' => 'A map of namespace IDs to filter definitions.', 'additionalProperties' => [ 'type' => 'object', 'description' => 'A map of filter names to values.', 'properties' => [ 'minCpuTime' => [ 'type' => 'number', ], ], ], ], ], 'PHPSessionHandling' => [ 'deprecated' => 'since 1.45 Integration with PHP session handling will be removed in the future', ], 'RawHtmlMessages' => [ 'items' => [ 'type' => 'string', ], ], 'InterwikiLogoOverride' => [ 'items' => [ 'type' => 'string', ], ], 'LegalTitleChars' => [ 'deprecated' => 'since 1.41; use Extension:TitleBlacklist to customize', ], 'ReauthenticateTime' => [ 'additionalProperties' => [ 'type' => 'integer', ], ], 'ChangeCredentialsBlacklist' => [ 'items' => [ 'type' => 'string', ], ], 'RemoveCredentialsBlacklist' => [ 'items' => [ 'type' => 'string', ], ], 'GroupPermissions' => [ 'additionalProperties' => [ 'type' => 'object', 'additionalProperties' => [ 'type' => 'boolean', ], ], ], 'GroupInheritsPermissions' => [ 'additionalProperties' => [ 'type' => 'string', ], ], 'AvailableRights' => [ 'items' => [ 'type' => 'string', ], ], 'ImplicitRights' => [ 'items' => [ 'type' => 'string', ], ], 'SoftBlockRanges' => [ 'items' => [ 'type' => 'string', ], ], 'ExternalQuerySources' => [ 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'enabled' => [ 'type' => 'boolean', 'default' => false, ], 'url' => [ 'type' => 'string', 'format' => 'uri', ], 'timeout' => [ 'type' => 'integer', 'default' => 10, ], ], 'required' => [ 'enabled', 'url', ], 'additionalProperties' => false, ], ], 'GrantPermissions' => [ 'additionalProperties' => [ 'type' => 'object', 'additionalProperties' => [ 'type' => 'boolean', ], ], ], 'GrantPermissionGroups' => [ 'additionalProperties' => [ 'type' => 'string', ], ], 'SitemapNamespacesPriorities' => [ 'deprecated' => 'since 1.45 and ignored', ], 'SitemapApiConfig' => [ 'additionalProperties' => [ 'enabled' => [ 'type' => 'bool', ], 'sitemapsPerIndex' => [ 'type' => 'int', ], 'pagesPerSitemap' => [ 'type' => 'int', ], 'expiry' => [ 'type' => 'int', ], ], ], 'SoftwareTags' => [ 'additionalProperties' => [ 'type' => 'boolean', ], ], 'UseCopyrightUpload' => [ 'deprecated' => 'since 1.47 This feature is being removed.', ], 'JobBackoffThrottling' => [ 'additionalProperties' => [ 'type' => 'number', ], ], 'JobTypeConf' => [ 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'class' => [ 'type' => 'string', ], 'order' => [ 'type' => 'string', ], 'claimTTL' => [ 'type' => 'integer', ], ], ], ], 'TrackingCategories' => [ 'deprecated' => 'since 1.25 Extensions should now register tracking categories using the new extension registration system.', ], 'RangeContributionsCIDRLimit' => [ 'additionalProperties' => [ 'type' => 'integer', ], ], 'RestSandboxSpecs' => [ 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'url' => [ 'type' => 'string', 'format' => 'url', ], 'name' => [ 'type' => 'string', ], 'file' => [ 'type' => 'string', ], 'msg' => [ 'type' => 'string', 'description' => 'a message key', ], ], ], ], 'RestModuleOverrides' => [ 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'mode' => [ 'type' => 'string', ], ], 'required' => [ 'mode', ], ], ], 'RestExternalModules' => [ 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'info' => [ 'type' => 'object', 'properties' => [ 'version' => [ 'type' => 'string', ], 'title' => [ 'type' => 'string', ], 'x-i18n-title' => [ 'type' => 'string', ], 'description' => [ 'type' => 'string', ], 'x-i18n-description' => [ 'type' => 'string', ], ], 'required' => [ 'version', ], ], 'base' => [ 'type' => 'string', 'format' => 'uri', ], 'spec' => [ 'type' => 'string', 'format' => 'uri', ], ], 'required' => [ 'info', 'base', 'spec', ], ], ], 'ShellboxUrls' => [ 'additionalProperties' => [ 'type' => [ 'string', 'boolean', 'null', ], ], ], ], 'obsolete-config' => [ 'MangleFlashPolicy' => 'Since 1.39; no longer has any effect.', 'EnableOpenSearchSuggest' => 'Since 1.35, no longer used', 'AutoloadAttemptLowercase' => 'Since 1.40; no longer has any effect.', ],]
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
Interface for objects which can provide a MediaWiki context on request.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
Interface for objects (potentially) representing an editable wiki page.
Interface for a page that is (or could be, or used to be) an editable wiki page.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.
This is a hook handler interface, see docs/Hooks.md.