diff options
Diffstat (limited to 'includes/config-schema.php')
-rw-r--r-- | includes/config-schema.php | 327 |
1 files changed, 265 insertions, 62 deletions
diff --git a/includes/config-schema.php b/includes/config-schema.php index 13774d69618d..470f7775fcfd 100644 --- a/includes/config-schema.php +++ b/includes/config-schema.php @@ -7,7 +7,7 @@ return [ 'default' => [ 'main' => 'GlobalVarConfig::newInstance', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'Sitename' => [ 'default' => 'MediaWiki', @@ -58,9 +58,17 @@ return [ ], 'ExtensionDirectory' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'StyleDirectory' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'ArticlePath' => [ 'default' => false, @@ -86,14 +94,14 @@ return [ 'Logos' => [ 'default' => false, 'type' => [ - 0 => 'array', + 0 => 'object', 1 => 'boolean', ], ], 'LogoHD' => [ 'default' => false, 'type' => [ - 0 => 'array', + 0 => 'object', 1 => 'boolean', ], ], @@ -123,6 +131,7 @@ return [ 'ActionPaths' => [ 'default' => [ ], + 'type' => 'object', ], 'MainPageIsDomainRoot' => [ 'default' => false, @@ -152,13 +161,19 @@ return [ 'ImgAuthUrlPathMap' => [ 'default' => [ ], + 'type' => 'object', ], 'LocalFileRepo' => [ 'default' => false, + 'type' => [ + 0 => 'object', + 1 => 'boolean', + ], ], 'ForeignFileRepos' => [ 'default' => [ ], + 'type' => 'array', ], 'UseInstantCommons' => [ 'default' => false, @@ -211,6 +226,7 @@ return [ 'default' => [ 0 => 'local', ], + 'type' => 'array', ], 'UploadDialog' => [ 'default' => [ @@ -235,14 +251,17 @@ return [ 'uncategorized' => '', ], ], + 'type' => 'object', ], 'FileBackends' => [ 'default' => [ ], + 'type' => 'object', ], 'LockManagers' => [ 'default' => [ ], + 'type' => 'object', ], 'ShowEXIF' => [ 'default' => true, @@ -256,6 +275,7 @@ return [ 'CopyUploadsDomains' => [ 'default' => [ ], + 'type' => 'array', ], 'CopyUploadsFromSpecialUpload' => [ 'default' => false, @@ -304,7 +324,7 @@ return [ 3 => 'jpeg', 4 => 'webp', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'ProhibitedFileExtensions' => [ 'default' => [ @@ -340,6 +360,7 @@ return [ 29 => 'vxd', 30 => 'cpl', ], + 'type' => 'array', ], 'MimeTypeExclusions' => [ 'default' => [ @@ -359,6 +380,7 @@ return [ 13 => 'application/x-msdownload', 14 => 'application/x-msmetafile', ], + 'type' => 'array', ], 'AllowJavaUploads' => [ 'default' => false, @@ -383,18 +405,16 @@ return [ 3 => 'image/svg+xml', 4 => 'application/pdf', ], + 'type' => 'array', ], 'MediaHandlers' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'NativeImageLazyLoading' => [ 'default' => false, - 'type' => [ - 0 => 'array', - 1 => 'boolean', - ], + 'type' => 'boolean', ], 'ParserTestMediaHandlers' => [ 'default' => [ @@ -409,6 +429,7 @@ return [ 'image/svg+xml' => 'MockSvgHandler', 'image/vnd.djvu' => 'MockDjVuHandler', ], + 'type' => 'object', ], 'UseImageResize' => [ 'default' => true, @@ -422,6 +443,7 @@ return [ 'MaxInterlacingAreas' => [ 'default' => [ ], + 'type' => 'object', ], 'SharpenParameter' => [ 'default' => '0x0.4', @@ -462,6 +484,7 @@ return [ 0 => 'SvgHandler::rasterizeImagickExt', ], ], + 'type' => 'object', ], 'SVGConverter' => [ 'default' => 'ImageMagick', @@ -492,6 +515,8 @@ return [ 'TiffThumbnailType' => [ 'default' => [ ], + 'type' => 'array', + 'mergeStrategy' => 'replace', ], 'ThumbnailEpoch' => [ 'default' => '20030516000000', @@ -511,9 +536,17 @@ return [ ], 'EnableAutoRotation' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'boolean', + ], ], 'Antivirus' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'AntivirusSetup' => [ 'default' => [ @@ -528,6 +561,7 @@ return [ 'messagepattern' => '/.*?:(.*)/sim', ], ], + 'type' => 'object', ], 'AntivirusRequired' => [ 'default' => true, @@ -546,6 +580,10 @@ return [ ], 'MimeDetectorCommand' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'TrivialMimeDetection' => [ 'default' => false, @@ -558,6 +596,7 @@ return [ 'http://www.w3.org/1999/xhtml:html' => 'text/html', 'html' => 'text/html', ], + 'type' => 'object', ], 'ImageLimits' => [ 'default' => [ @@ -586,6 +625,7 @@ return [ 1 => 2048, ], ], + 'type' => 'array', ], 'ThumbLimits' => [ 'default' => [ @@ -596,9 +636,14 @@ return [ 4 => 250, 5 => 300, ], + 'type' => 'array', ], 'ThumbnailBuckets' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'array', + ], ], 'ThumbnailMinimumBucketDistance' => [ 'default' => 50, @@ -606,6 +651,7 @@ return [ 'UploadThumbnailRenderMap' => [ 'default' => [ ], + 'type' => 'object', ], 'UploadThumbnailRenderMethod' => [ 'default' => 'jobqueue', @@ -622,6 +668,7 @@ return [ 'GalleryOptions' => [ 'default' => [ ], + 'type' => 'object', ], 'ThumbUpright' => [ 'default' => 0.75, @@ -637,15 +684,31 @@ return [ ], 'DjvuDump' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'DjvuRenderer' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'DjvuTxt' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'DjvuPostProcessor' => [ 'default' => 'pnmtojpeg', + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'DjvuOutputExtension' => [ 'default' => 'jpg', @@ -691,6 +754,10 @@ return [ ], 'SMTP' => [ 'default' => false, + 'type' => [ + 0 => 'boolean', + 1 => 'object', + ], ], 'AdditionalMailParams' => [ 'default' => null, @@ -730,12 +797,17 @@ return [ 'UsersNotifiedOnAllChanges' => [ 'default' => [ ], + 'type' => 'object', ], 'DBname' => [ 'default' => 'my_wiki', ], 'DBmwschema' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'string', + ], ], 'DBprefix' => [ 'default' => '', @@ -796,17 +868,24 @@ return [ 0 => 'user', 1 => 'user_properties', ], + 'type' => 'array', ], 'SharedSchema' => [ 'default' => false, ], 'DBservers' => [ 'default' => false, + 'type' => [ + 0 => 'boolean', + 1 => 'array', + ], ], 'LBFactoryConf' => [ 'default' => [ 'class' => 'Wikimedia\\Rdbms\\LBFactorySimple', ], + 'type' => 'object', + 'mergeStrategy' => 'replace', ], 'DataCenterUpdateStickTTL' => [ 'default' => 10, @@ -851,12 +930,12 @@ return [ 'text' => 'TextContentHandler', 'unknown' => 'FallbackContentHandler', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'NamespaceContentModels' => [ 'default' => [ ], - 'mergeStrategy' => 'array_plus', + 'type' => 'object', ], 'ContentHandlerTextFallback' => [ 'default' => 'ignore', @@ -867,6 +946,7 @@ return [ 1 => 'javascript', 2 => 'css', ], + 'type' => 'array', ], 'CompressRevisions' => [ 'default' => false, @@ -879,6 +959,7 @@ return [ 'ExternalServers' => [ 'default' => [ ], + 'type' => 'object', ], 'DefaultExternalStore' => [ 'default' => false, @@ -949,6 +1030,10 @@ return [ ], 'PoolCounterConf' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'object', + ], ], 'MaxUserDBWriteDuration' => [ 'default' => false, @@ -1055,9 +1140,15 @@ return [ 'reportDupes' => false, ], ], + 'mergeStrategy' => 'array_plus', ], 'MainWANCache' => [ 'default' => false, + 'type' => [ + 0 => 'integer', + 1 => 'string', + 2 => 'boolean', + ], ], 'WANObjectCaches' => [ 'default' => [ @@ -1066,6 +1157,7 @@ return [ 'cacheId' => 0, ], ], + 'mergeStrategy' => 'array_plus', ], 'EnableWANCacheReaper' => [ 'default' => false, @@ -1108,6 +1200,7 @@ return [ 'default' => [ 0 => '127.0.0.1:11211', ], + 'type' => 'array', ], 'MemCachedPersistent' => [ 'default' => false, @@ -1132,6 +1225,7 @@ return [ 'forceRecache' => false, 'manualRecache' => false, ], + 'type' => 'object', ], 'CachePages' => [ 'default' => true, @@ -1209,10 +1303,12 @@ return [ 'CdnServers' => [ 'default' => [ ], + 'type' => 'object', ], 'CdnServersNoPurge' => [ 'default' => [ ], + 'type' => 'object', ], 'SquidPurgeUseHostHeader' => [ 'default' => true, @@ -1220,6 +1316,7 @@ return [ 'HTCPRouting' => [ 'default' => [ ], + 'type' => 'object', ], 'HTCPMulticastTTL' => [ 'default' => 1, @@ -1233,6 +1330,7 @@ return [ 'GrammarForms' => [ 'default' => [ ], + 'type' => 'object', ], 'InterwikiMagic' => [ 'default' => true, @@ -1243,14 +1341,17 @@ return [ 'ExtraInterlanguageLinkPrefixes' => [ 'default' => [ ], + 'type' => 'object', ], 'InterlanguageLinkCodeMap' => [ 'default' => [ ], + 'type' => 'object', ], 'ExtraLanguageNames' => [ 'default' => [ ], + 'type' => 'object', ], 'ExtraLanguageCodes' => [ 'default' => [ @@ -1258,10 +1359,12 @@ return [ 'no' => 'nb', 'simple' => 'en', ], + 'type' => 'object', ], 'DummyLanguageCodes' => [ 'default' => [ ], + 'type' => 'object', ], 'AllUnicodeFixes' => [ 'default' => false, @@ -1299,6 +1402,7 @@ return [ 'DisabledVariants' => [ 'default' => [ ], + 'type' => 'object', ], 'VariantArticlePath' => [ 'default' => false, @@ -1309,6 +1413,7 @@ return [ 'ForceUIMsgAsContentMsg' => [ 'default' => [ ], + 'type' => 'object', ], 'RawHtmlMessages' => [ 'default' => [ @@ -1318,7 +1423,6 @@ return [ 3 => 'feedback-terms', 4 => 'feedback-termsofuse', ], - 'mergeStrategy' => 'array_merge', 'type' => 'array', 'items' => [ 'type' => 'string', @@ -1333,7 +1437,7 @@ return [ 'OverrideUcfirstCharacters' => [ 'default' => [ ], - 'type' => 'array', + 'type' => 'object', ], 'MimeType' => [ 'default' => 'text/html', @@ -1353,6 +1457,7 @@ return [ 'XhtmlNamespaces' => [ 'default' => [ ], + 'type' => 'object', ], 'SiteNotice' => [ 'default' => '', @@ -1364,6 +1469,7 @@ return [ 'SkinMetaTags' => [ 'default' => [ ], + 'type' => 'object', ], 'DefaultSkin' => [ 'default' => 'vector', @@ -1374,6 +1480,7 @@ return [ 'SkipSkins' => [ 'default' => [ ], + 'type' => 'object', ], 'DisableOutputCompression' => [ 'default' => false, @@ -1383,6 +1490,7 @@ return [ 0 => 'html5', 1 => 'legacy', ], + 'type' => 'array', ], 'ExternalInterwikiFragmentMode' => [ 'default' => 'legacy', @@ -1401,6 +1509,7 @@ return [ ], ], ], + 'type' => 'object', ], 'UseCombinedLoginLink' => [ 'default' => false, @@ -1423,15 +1532,17 @@ return [ 'ResourceModules' => [ 'default' => [ ], + 'type' => 'object', ], 'ResourceModuleSkinStyles' => [ 'default' => [ ], + 'type' => 'object', ], 'ResourceLoaderSources' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'ResourceBasePath' => [ 'default' => null, @@ -1441,6 +1552,7 @@ return [ 'versioned' => 2592000, 'unversioned' => 300, ], + 'type' => 'object', ], 'ResourceLoaderUseObjectCacheForDeps' => [ 'default' => false, @@ -1503,19 +1615,22 @@ return [ 14 => 'Category', 15 => 'Category_talk', ], + 'type' => 'object', ], 'ExtraNamespaces' => [ 'default' => [ ], + 'type' => 'object', ], 'ExtraGenderNamespaces' => [ 'default' => [ ], - 'mergeStrategy' => 'array_plus', + 'type' => 'object', ], 'NamespaceAliases' => [ 'default' => [ ], + 'type' => 'object', ], 'LegalTitleChars' => [ 'default' => ' %!"$&\'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+', @@ -1526,7 +1641,7 @@ return [ 'CapitalLinkOverrides' => [ 'default' => [ ], - 'mergeStrategy' => 'array_plus', + 'type' => 'object', ], 'NamespacesWithSubpages' => [ 'default' => [ @@ -1544,21 +1659,23 @@ return [ 13 => true, 15 => true, ], - 'mergeStrategy' => 'array_plus', + 'type' => 'object', ], 'ContentNamespaces' => [ 'default' => [ 0 => 0, ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'ShortPagesNamespaceExclusions' => [ 'default' => [ ], + 'type' => 'array', ], 'ExtraSignatureNamespaces' => [ 'default' => [ ], + 'type' => 'array', ], 'MaxRedirects' => [ 'default' => 1, @@ -1570,6 +1687,7 @@ return [ 2 => 'Mytalk', 3 => 'Redirect', ], + 'type' => 'array', ], 'DisableHardRedirects' => [ 'default' => false, @@ -1580,10 +1698,12 @@ return [ 'InterwikiPrefixDisplayTypes' => [ 'default' => [ ], + 'type' => 'object', ], 'LocalInterwikis' => [ 'default' => [ ], + 'type' => 'array', ], 'InterwikiExpiry' => [ 'default' => 10800, @@ -1592,9 +1712,10 @@ return [ 'default' => false, 'type' => [ 0 => 'boolean', - 1 => 'array', + 1 => 'object', 2 => 'string', ], + 'mergeStrategy' => 'replace', ], 'InterwikiScopes' => [ 'default' => 3, @@ -1609,6 +1730,7 @@ return [ 'default' => [ 'mediawiki' => 'MediaWikiSite', ], + 'type' => 'object', ], 'MaxTocLevel' => [ 'default' => 999, @@ -1653,6 +1775,7 @@ return [ 26 => 'xmpp:', 27 => '//', ], + 'type' => 'array', ], 'CleanSignatures' => [ 'default' => true, @@ -1672,6 +1795,7 @@ return [ 'TidyConfig' => [ 'default' => [ ], + 'type' => 'object', ], 'ParserEnableLegacyMediaDOM' => [ 'default' => true, @@ -1691,11 +1815,13 @@ return [ 'NoFollowNsExceptions' => [ 'default' => [ ], + 'type' => 'array', ], 'NoFollowDomainExceptions' => [ 'default' => [ 0 => 'mediawiki.org', ], + 'type' => 'array', ], 'RegisterInternalExternals' => [ 'default' => false, @@ -1724,6 +1850,7 @@ return [ 'PMID' => false, 'RFC' => false, ], + 'type' => 'object', ], 'ArticleCountMethod' => [ 'default' => 'link', @@ -1761,7 +1888,7 @@ return [ ], ], ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'CentralIdLookupProvider' => [ 'default' => 'local', @@ -1818,10 +1945,15 @@ return [ 'PasswordNotInCommonList' => 'PasswordPolicyChecks::checkPasswordNotInCommonList', ], ], - 'mergeStrategy' => 'array_merge_recursive', + 'type' => 'object', + 'mergeStrategy' => 'array_replace_recursive', ], 'AuthManagerConfig' => [ 'default' => null, + 'type' => [ + 0 => 'object', + 1 => 'null', + ], ], 'AuthManagerAutoConfig' => [ 'default' => [ @@ -1875,6 +2007,7 @@ return [ ], ], ], + 'type' => 'object', 'mergeStrategy' => 'array_plus_2d', ], 'RememberMe' => [ @@ -1885,7 +2018,6 @@ return [ 'default' => [ 'default' => 300, ], - 'mergeStrategy' => 'array_merge', 'type' => 'object', 'additionalProperties' => [ 'type' => 'integer', @@ -1904,7 +2036,6 @@ return [ 'default' => [ 0 => 'MediaWiki\\Auth\\TemporaryPasswordAuthenticationRequest', ], - 'mergeStrategy' => 'array_merge', 'type' => 'array', 'items' => [ 'type' => 'string', @@ -1914,7 +2045,6 @@ return [ 'default' => [ 0 => 'MediaWiki\\Auth\\PasswordAuthenticationRequest', ], - 'mergeStrategy' => 'array_merge', 'type' => 'array', 'items' => [ 'type' => 'string', @@ -1969,12 +2099,14 @@ return [ 'algo' => 'auto', ], ], + 'type' => 'object', ], 'PasswordResetRoutes' => [ 'default' => [ 'username' => true, 'email' => true, ], + 'type' => 'object', ], 'MaxSigChars' => [ 'default' => 255, @@ -1986,6 +2118,7 @@ return [ 'default' => [ 0 => 'obsolete-tag', ], + 'type' => 'array', ], 'MaxNameChars' => [ 'default' => 255, @@ -2005,6 +2138,7 @@ return [ 10 => 'msg:spambot_username', 11 => 'msg:autochange-username', ], + 'type' => 'array', ], 'DefaultUserOptions' => [ 'default' => [ @@ -2071,12 +2205,12 @@ return [ 'requireemail' => 0, 'skin-responsive' => 1, ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'HiddenPrefs' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'InvalidUsernameCharacters' => [ 'default' => '@:', @@ -2114,7 +2248,7 @@ return [ ], ], ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'AllowRequiringEmailForResets' => [ 'default' => false, @@ -2130,6 +2264,7 @@ return [ 'IPv4' => 16, 'IPv6' => 19, ], + 'type' => 'object', ], 'BlockDisablesLogin' => [ 'default' => false, @@ -2279,6 +2414,7 @@ return [ 'RevokePermissions' => [ 'default' => [ ], + 'type' => 'object', 'mergeStrategy' => 'array_plus_2d', ], 'GroupInheritsPermissions' => [ @@ -2295,17 +2431,17 @@ return [ 1 => 'user', 2 => 'autoconfirmed', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'GroupsAddToSelf' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'GroupsRemoveFromSelf' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'RestrictionTypes' => [ 'default' => [ @@ -2314,6 +2450,7 @@ return [ 2 => 'move', 3 => 'upload', ], + 'type' => 'array', ], 'RestrictionLevels' => [ 'default' => [ @@ -2321,26 +2458,29 @@ return [ 1 => 'autoconfirmed', 2 => 'sysop', ], + 'type' => 'array', ], 'CascadingRestrictionLevels' => [ 'default' => [ 0 => 'sysop', ], + 'type' => 'array', ], 'SemiprotectedRestrictionLevels' => [ 'default' => [ 0 => 'autoconfirmed', ], + 'type' => 'array', ], 'NamespaceProtection' => [ 'default' => [ ], - 'mergeStrategy' => 'array_plus', + 'type' => 'object', ], 'NonincludableNamespaces' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'AutoConfirmAge' => [ 'default' => 0, @@ -2362,12 +2502,14 @@ return [ ], ], ], + 'type' => 'object', ], 'AutopromoteOnce' => [ 'default' => [ 'onEdit' => [ ], ], + 'type' => 'object', ], 'AutopromoteOnceLogInRC' => [ 'default' => true, @@ -2375,17 +2517,17 @@ return [ 'AddGroups' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'RemoveGroups' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'AvailableRights' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'DeleteRevisionsLimit' => [ 'default' => 0, @@ -2403,14 +2545,17 @@ return [ 'seconds' => 86400, ], ], + 'type' => 'array', ], 'SpamRegex' => [ 'default' => [ ], + 'type' => 'array', ], 'SummarySpamRegex' => [ 'default' => [ ], + 'type' => 'array', ], 'EnableDnsBlacklist' => [ 'default' => false, @@ -2419,14 +2564,20 @@ return [ 'default' => [ 0 => 'http.dnsbl.sorbs.net.', ], + 'type' => 'array', ], 'ProxyList' => [ 'default' => [ ], + 'type' => [ + 0 => 'string', + 1 => 'array', + ], ], 'ProxyWhitelist' => [ 'default' => [ ], + 'type' => 'array', ], 'SoftBlockRanges' => [ 'default' => [ @@ -2596,11 +2747,13 @@ return [ ], ], ], + 'type' => 'object', 'mergeStrategy' => 'array_plus_2d', ], 'RateLimitsExcludedIPs' => [ 'default' => [ ], + 'type' => 'array', ], 'PutIPinRC' => [ 'default' => true, @@ -2619,6 +2772,7 @@ return [ 'seconds' => 172800, ], ], + 'type' => 'array', ], 'GrantPermissions' => [ 'default' => [ @@ -2830,7 +2984,6 @@ return [ 'privateinfo' => 'private-information', ], 'type' => 'object', - 'mergeStrategy' => 'array_merge', 'additionalProperties' => [ 'type' => 'string', ], @@ -2912,6 +3065,7 @@ return [ 'https://t.lkqd.net/t' => true, 'chrome-extension' => true, ], + 'type' => 'object', ], 'AllowCrossOrigin' => [ 'default' => false, @@ -2971,6 +3125,7 @@ return [ 'CacheVaryCookies' => [ 'default' => [ ], + 'type' => 'array', ], 'SessionName' => [ 'default' => false, @@ -3043,15 +3198,18 @@ return [ 'maxAffected' => 1000, ], ], + 'type' => 'object', ], 'DebugLogGroups' => [ 'default' => [ ], + 'type' => 'object', ], 'MWLoggerDefaultSpi' => [ 'default' => [ 'class' => 'MediaWiki\\Logger\\LegacySpi', ], + 'mergeStrategy' => 'replace', 'type' => 'object', ], 'ShowDebug' => [ @@ -3084,6 +3242,8 @@ return [ 'Profiler' => [ 'default' => [ ], + 'type' => 'object', + 'mergeStrategy' => 'replace', ], 'StatsdServer' => [ 'default' => false, @@ -3094,6 +3254,7 @@ return [ 'StatsdSamplingRates' => [ 'default' => [ ], + 'type' => 'object', ], 'MetricsTarget' => [ 'default' => null, @@ -3119,7 +3280,7 @@ return [ 'ParserTestFiles' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'EnableJavaScriptTest' => [ 'default' => false, @@ -3147,6 +3308,7 @@ return [ 'application/x-suggestions+json' => false, 'application/x-suggestions+xml' => false, ], + 'type' => 'object', ], 'EnableOpenSearchSuggest' => [ 'default' => true, @@ -3167,6 +3329,7 @@ return [ 'default' => [ 0 => true, ], + 'type' => 'array', ], 'DisableInternalSearch' => [ 'default' => false, @@ -3176,9 +3339,17 @@ return [ ], 'SitemapNamespaces' => [ 'default' => false, + 'type' => [ + 0 => 'boolean', + 1 => 'array', + ], ], 'SitemapNamespacesPriorities' => [ 'default' => false, + 'type' => [ + 0 => 'boolean', + 1 => 'object', + ], ], 'EnableSearchContributorsByIP' => [ 'default' => true, @@ -3186,7 +3357,7 @@ return [ 'SpecialSearchFormOptions' => [ 'default' => [ ], - 'type' => 'array', + 'type' => 'object', ], 'SearchMatchRedirectPreference' => [ 'default' => false, @@ -3206,6 +3377,7 @@ return [ 'default' => [ 14 => true, ], + 'type' => 'object', ], 'UniversalEditButton' => [ 'default' => true, @@ -3240,6 +3412,7 @@ return [ 'https://(?:[a-z0-9_]+@)?gerrit.wikimedia.org/r/(?:p/)?(.*)' => 'https://gerrit.wikimedia.org/g/%R/+/%H', 'ssh://(?:[a-z0-9_]+@)?gerrit.wikimedia.org:29418/(.*)' => 'https://gerrit.wikimedia.org/g/%R/+/%H', ], + 'type' => 'object', ], 'RCMaxAge' => [ 'default' => 7776000, @@ -3260,6 +3433,7 @@ return [ 2 => 250, 3 => 500, ], + 'type' => 'array', ], 'RCLinkDays' => [ 'default' => [ @@ -3269,16 +3443,19 @@ return [ 3 => 14, 4 => 30, ], + 'type' => 'array', ], 'RCFeeds' => [ 'default' => [ ], + 'type' => 'object', ], 'RCEngines' => [ 'default' => [ 'redis' => 'RedisPubSubFeedEngine', 'udp' => 'UDPRCFeedEngine', ], + 'type' => 'object', ], 'RCWatchCategoryMembership' => [ 'default' => false, @@ -3310,18 +3487,20 @@ return [ 'OverrideSiteFeed' => [ 'default' => [ ], + 'type' => 'object', ], 'FeedClasses' => [ 'default' => [ 'rss' => 'RSSFeed', 'atom' => 'AtomFeed', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'AdvertisedFeedTypes' => [ 'default' => [ 0 => 'atom', ], + 'type' => 'array', ], 'RCShowWatchingUsers' => [ 'default' => false, @@ -3394,7 +3573,7 @@ return [ 'grouping' => 'any', ], ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'WatchlistExpiry' => [ 'default' => false, @@ -3435,6 +3614,7 @@ return [ 'ImportSources' => [ 'default' => [ ], + 'type' => 'object', ], 'ImportTargetNamespace' => [ 'default' => null, @@ -3466,26 +3646,27 @@ return [ 'ExtensionFunctions' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'ExtensionMessagesFiles' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'MessagesDirs' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'ExtensionEntryPointListFiles' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'ParserOutputHooks' => [ 'default' => [ ], + 'type' => 'object', ], 'EnableParserLimitReporting' => [ 'default' => true, @@ -3493,12 +3674,12 @@ return [ 'ValidSkinNames' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'SpecialPages' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'AutoloadAttemptLowercase' => [ 'default' => false, @@ -3506,16 +3687,18 @@ return [ 'ExtensionCredits' => [ 'default' => [ ], + 'type' => 'object', ], 'Hooks' => [ 'default' => [ ], + 'type' => 'object', 'mergeStrategy' => 'array_merge_recursive', ], 'ServiceWiringFiles' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'JobClasses' => [ 'default' => [ @@ -3545,13 +3728,14 @@ return [ 'null' => 'NullJob', 'userEditCountInit' => 'UserEditCountInitJob', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'JobTypesExcludedFromDefaultQueue' => [ 'default' => [ 0 => 'AssembleUploadChunks', 1 => 'PublishStashedFile', ], + 'type' => 'array', ], 'JobBackoffThrottling' => [ 'default' => [ @@ -3576,6 +3760,7 @@ return [ 'claimTTL' => 3600, ], ], + 'type' => 'object', ], 'JobQueueIncludeInMaxLagFactor' => [ 'default' => false, @@ -3587,11 +3772,13 @@ return [ 1 => 'cacheUpdate', ], ], + 'type' => 'object', ], 'PagePropLinkInvalidations' => [ 'default' => [ 'hiddencat' => 'categorylinks', ], + 'type' => 'object', ], 'CategoryMagicGallery' => [ 'default' => true, @@ -3605,10 +3792,12 @@ return [ 'TempCategoryCollations' => [ 'default' => [ ], + 'type' => 'array', ], 'TrackingCategories' => [ 'default' => [ ], + 'type' => 'array', ], 'LogTypes' => [ 'default' => [ @@ -3627,13 +3816,13 @@ return [ 12 => 'managetags', 13 => 'contentmodel', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'LogRestrictions' => [ 'default' => [ 'suppress' => 'suppressionlog', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'FilterLogTypes' => [ 'default' => [ @@ -3641,7 +3830,7 @@ return [ 'tag' => true, 'newusers' => false, ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'LogNames' => [ 'default' => [ @@ -3657,7 +3846,7 @@ return [ 'merge' => 'mergelog', 'suppress' => 'suppressionlog', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'LogHeaders' => [ 'default' => [ @@ -3673,12 +3862,12 @@ return [ 'suppress' => 'suppressionlogtext', 'upload' => 'uploadlogpagetext', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'LogActions' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'LogActionsHandlers' => [ 'default' => [ @@ -3720,7 +3909,7 @@ return [ 'upload/revert' => 'UploadLogFormatter', 'upload/upload' => 'UploadLogFormatter', ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'ActionFilteredLogs' => [ 'default' => [ @@ -3857,7 +4046,7 @@ return [ ], ], ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'NewUserLog' => [ 'default' => true, @@ -3890,7 +4079,7 @@ return [ 'Actions' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'array', ], 'DefaultRobotPolicy' => [ 'default' => 'index,follow', @@ -3898,13 +4087,19 @@ return [ 'NamespaceRobotPolicies' => [ 'default' => [ ], + 'type' => 'object', ], 'ArticleRobotPolicies' => [ 'default' => [ ], + 'type' => 'object', ], 'ExemptFromUserRobotsControl' => [ 'default' => null, + 'type' => [ + 0 => 'null', + 1 => 'array', + ], ], 'DebugAPI' => [ 'default' => false, @@ -3912,27 +4107,27 @@ return [ 'APIModules' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'APIFormatModules' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'APIMetaModules' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'APIPropModules' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'APIListModules' => [ 'default' => [ ], - 'mergeStrategy' => 'array_merge', + 'type' => 'object', ], 'APIMaxDBRows' => [ 'default' => 5000, @@ -3957,6 +4152,7 @@ return [ 0 => 'MIMEsearch', 1 => 'LinkSearch', ], + 'type' => 'array', ], 'AjaxUploadDestCheck' => [ 'default' => true, @@ -3967,10 +4163,12 @@ return [ 'CrossSiteAJAXdomains' => [ 'default' => [ ], + 'type' => 'object', ], 'CrossSiteAJAXdomainExceptions' => [ 'default' => [ ], + 'type' => 'object', ], 'AllowedCorsHeaders' => [ 'default' => [ @@ -3985,10 +4183,12 @@ return [ 8 => 'Api-User-Agent', 9 => 'Access-Control-Max-Age', ], + 'type' => 'array', ], 'RestAPIAdditionalRouteFiles' => [ 'default' => [ ], + 'type' => 'array', ], 'MaxShellMemory' => [ 'default' => 307200, @@ -4066,6 +4266,7 @@ return [ 'LocalVirtualHosts' => [ 'default' => [ ], + 'type' => 'object', ], 'LocalHTTPProxy' => [ 'default' => false, @@ -4104,6 +4305,7 @@ return [ 'HTTPProxy' => null, ], ], + 'mergeStrategy' => 'array_plus_2d', 'type' => 'object', ], 'EventRelayerConfig' => [ @@ -4112,6 +4314,7 @@ return [ 'class' => 'EventRelayerNull', ], ], + 'type' => 'object', ], 'Pingback' => [ 'default' => false, |