wiki.techinc.nl/includes/config-schema.php

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

3449 lines
82 KiB
PHP
Raw Normal View History

<?php
// This file is automatically generated using maintenance/generateConfigSchema.php.
// Do not modify this file manually, edit includes/MainConfigSchema.php instead.
// phpcs:disable Generic.Files.LineLength
return [
'config-schema-inverse' => [
'default' => [
'ConfigRegistry' => [
'main' => '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,
'BaseDirectory' => 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' => false,
'ForeignFileRepos' => [
],
'UseInstantCommons' => false,
'UseSharedUploads' => false,
'SharedUploadDirectory' => null,
'SharedUploadPath' => null,
'HashedSharedUploadDirectory' => true,
'RepositoryBaseUrl' => 'https://commons.wikimedia.org/wiki/File:',
'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' => [
],
'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,
'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',
'sodipodi' => '$path/sodipodi -z -w $width -f $input -e $output',
'inkscape' => '$path/inkscape -z -w $width -f $input -e $output',
'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',
'imgserv' => '$path/imgserv-wrapper -i svg -o png -w$width $input $output',
'ImagickExt' => [
'SvgHandler::rasterizeImagickExt',
],
],
'SVGConverter' => 'ImageMagick',
'SVGConverterPath' => '',
'SVGMaxSize' => 5120,
'SVGMetadataCutoff' => 5242880,
'SVGNativeRendering' => false,
'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://www.w3.org/2000/svg:svg' => 'image/svg+xml',
'svg' => 'image/svg+xml',
'http://www.lysator.liu.se/~alla/dia/:diagram' => 'application/x-dia-diagram',
'http://www.w3.org/1999/xhtml:html' => 'text/html',
'html' => 'text/html',
],
'ImageLimits' => [
[
320,
240,
],
[
640,
480,
],
[
800,
600,
],
[
1024,
768,
],
[
1280,
1024,
],
[
2560,
2048,
],
],
'ThumbLimits' => [
120,
150,
180,
200,
250,
300,
],
Introduce SearchResultThumbnailProvider & move hook + NS_FILE thumbs in What was previously a REST API-only feature (the thumbnails hook allowing for thumbnails for non-file pages via the PageImages extension) is now also being adopted in the main search page. That hook will now be called with NS_FILE result thumbnails pre-filled, which was not the case previously. PageImages essentially duplicated NS_FILE thumbnail logic that was already present in Special:Search, so that can (and will in a follow-up patch) then be removed there. Special:Search will then simply take whatever is produced from the provider (which will include both NS_FILE thumbs - which it handled already - as well as whatever else it receives from the hook), as will the REST API (which already received both) Since thumbnails can now come in for multiple namespaces & having some of those results with & others without a thumbnail can be quite jarring, it was decided that we'd display placeholder images (for certain namespaces). This is now controlled by $wgThumbnailNamespaces. I also split up a few things in FullSearchResultWidget:: generateFileHtml for more clarity. Meanwhile also updated mediawiki.special.search.styles.less to use variables for known colors. Also implemented a 'transform' (required for testing this change properly) and 'getDisplayWidthHeight' (it became needed after implementing transform) callback function for mock Files, and updated some existing tests in response to these changes. And some more Rest test files have been updated to allow passing around a HookContainer instead of only an array of hooks (from which a new HookContainer would then be created) to allow the same container to be used across all relevant objects, who may have it injected as dependency. Bug: T306883 Change-Id: I2a679b51758020d3e822da01a1bde1ae632b0b0a
2022-08-31 14:51:57 +00:00
'ThumbnailNamespaces' => [
6,
Introduce SearchResultThumbnailProvider & move hook + NS_FILE thumbs in What was previously a REST API-only feature (the thumbnails hook allowing for thumbnails for non-file pages via the PageImages extension) is now also being adopted in the main search page. That hook will now be called with NS_FILE result thumbnails pre-filled, which was not the case previously. PageImages essentially duplicated NS_FILE thumbnail logic that was already present in Special:Search, so that can (and will in a follow-up patch) then be removed there. Special:Search will then simply take whatever is produced from the provider (which will include both NS_FILE thumbs - which it handled already - as well as whatever else it receives from the hook), as will the REST API (which already received both) Since thumbnails can now come in for multiple namespaces & having some of those results with & others without a thumbnail can be quite jarring, it was decided that we'd display placeholder images (for certain namespaces). This is now controlled by $wgThumbnailNamespaces. I also split up a few things in FullSearchResultWidget:: generateFileHtml for more clarity. Meanwhile also updated mediawiki.special.search.styles.less to use variables for known colors. Also implemented a 'transform' (required for testing this change properly) and 'getDisplayWidthHeight' (it became needed after implementing transform) callback function for mock Files, and updated some existing tests in response to these changes. And some more Rest test files have been updated to allow passing around a HookContainer instead of only an array of hooks (from which a new HookContainer would then be created) to allow the same container to be used across all relevant objects, who may have it injected as dependency. Bug: T306883 Change-Id: I2a679b51758020d3e822da01a1bde1ae632b0b0a
2022-08-31 14:51:57 +00:00
],
'ThumbnailBuckets' => null,
'ThumbnailMinimumBucketDistance' => 50,
'UploadThumbnailRenderMap' => [
],
'UploadThumbnailRenderMethod' => 'jobqueue',
'UploadThumbnailRenderHttpCustomHost' => false,
'UploadThumbnailRenderHttpCustomDomain' => false,
'UseTinyRGBForJPGThumbnails' => false,
'GalleryOptions' => [
],
'ThumbUpright' => 0.75,
'DirectoryMode' => 511,
'ResponsiveImages' => true,
'ImagePreconnect' => false,
'DjvuUseBoxedCommand' => false,
'DjvuDump' => null,
'DjvuRenderer' => null,
'DjvuTxt' => null,
'DjvuPostProcessor' => 'pnmtojpeg',
'DjvuOutputExtension' => 'jpg',
'EmergencyContact' => false,
'PasswordSender' => false,
'NoReplyAddress' => false,
'EnableEmail' => true,
'EnableUserEmail' => true,
'EnableSpecialMute' => false,
'EnableUserEmailMuteList' => false,
'UserEmailUseReplyTo' => true,
'PasswordReminderResendTime' => 24,
'NewPasswordExpiry' => 604800,
'UserEmailConfirmationTokenExpiry' => 604800,
'PasswordExpirationDays' => false,
'PasswordExpireGrace' => 604800,
'SMTP' => false,
'AdditionalMailParams' => null,
'AllowHTMLEmail' => false,
'EnotifFromEditor' => false,
'EmailAuthentication' => true,
'EnotifWatchlist' => false,
'EnotifUserTalk' => false,
'EnotifRevealEditorAddress' => false,
'EnotifMinorEdits' => true,
'EnotifImpersonal' => false,
'EnotifMaxRecips' => 500,
'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' => '',
'DBDefaultGroup' => null,
'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' => [
],
'PageLinksSchemaMigrationStage' => 768,
'ExternalLinksDomainGaps' => [
],
'ContentHandlers' => [
'wikitext' => [
'class' => 'WikitextContentHandler',
'services' => [
'TitleFactory',
'ParserFactory',
'GlobalIdGenerator',
'LanguageNameUtils',
'LinkRenderer',
'MagicWordFactory',
'ParsoidParserFactory',
],
],
'javascript' => 'MediaWiki\\Content\\JavaScriptContentHandler',
'json' => 'MediaWiki\\Content\\JsonContentHandler',
'css' => 'MediaWiki\\Content\\CssContentHandler',
'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,
'LanguageConverterCacheType' => -1,
'ObjectCaches' => [
0 => [
'class' => 'EmptyBagOStuff',
'reportDupes' => false,
],
1 => [
'class' => 'SqlBagOStuff',
'loggroup' => 'SQLBagOStuff',
],
'memcached-php' => [
'class' => 'MemcachedPhpBagOStuff',
'loggroup' => 'memcached',
],
'memcached-pecl' => [
'class' => 'MemcachedPeclBagOStuff',
'loggroup' => 'memcached',
],
'hash' => [
'class' => 'HashBagOStuff',
'reportDupes' => false,
],
'apc' => [
'class' => 'APCUBagOStuff',
'reportDupes' => false,
],
'apcu' => [
'class' => 'APCUBagOStuff',
'reportDupes' => false,
],
'wincache' => [
'class' => 'WinCacheBagOStuff',
'reportDupes' => false,
],
],
objectcache: Remove $wgMainWANCache and $wgWANObjectCaches We always wrap the local cluster cache, and there are no subclasses of WANObjectCache. It was never documented or recommended how these would be used. It is a left-over from the original 2015 Multi-DC plan in which WANObjectCache would work differently. See task for details. Note that this requires no configuration changes, even in the theoretical case of these variables being used, as the only option is to use the main cache, and that's also the default. * Update WAN overrides to override the underlying main cache instead. * Fix EditPageTest which was previously implicitly using a 'hash' as main cache but also relying on wan cache to be 'none'. The part that it actually needs is the 'none'. When WAN cache is enabled, testUpdateNoMinor fails due to an edit conflict because one of the edits it makes is made with a current timestamp whereas it expects to simulate wpEdittime in the year 2012 which, when caching is enabled, is ignored and becomes the current time instead. I don't understand exactly why, but I'm going to conserve that behaviour for now. * Fix TemplateCategoriesTest, which was failing due to an unexpected cache hit: > [objectcache] fetchOrRegenerate(…:page:10:…): volatile hit This could be solved in a more realistic way by splitting the test, or by explicitly resetting services half-way the test to clear WikiPageFactory, PageStore and WANCache process state. For now, keep the prior behaviour of no cache in this test. Bug: T305093 Bug: T329680 Depends-On: If890622eed0d0f8b4bd73d36ba1815a3d760ea05 Depends-On: Ie1def75208822bdf19bb2cfd7e6edf32c2000e6b Depends-On: I35cce61dc3ee90dcee3dd6f0b36f84133be029ed Change-Id: I53781a8c06ebb2583f6ca83dd91bbfe8a5c88b13
2023-02-14 21:43:12 +00:00
'WANObjectCache' => [
],
'MicroStashType' => -1,
'MainStash' => 1,
'ParsoidCacheConfig' => [
'StashType' => null,
'StashDuration' => 86400,
'WarmParsoidParserCache' => false,
],
'ParserCacheFilterConfig' => [
'pcache' => [
'default' => [
'minCpuTime' => 0,
],
],
'parsoid-pcache' => [
'default' => [
'minCpuTime' => 0,
],
],
],
'ChronologyProtectorStash' => null,
'ChronologyProtectorSecret' => '',
'ParserCacheExpireTime' => 86400,
'OldRevisionParserCacheExpireTime' => 3600,
'ObjectCacheSessionExpiry' => 3600,
'PHPSessionHandling' => 'enable',
'SuspiciousIpExpiry' => false,
'SessionPbkdf2Iterations' => 10001,
'MemCachedServers' => [
'127.0.0.1:11211',
],
'MemCachedPersistent' => false,
'MemCachedTimeout' => 500000,
'UseLocalMessageCache' => false,
'AdaptiveMessageCache' => false,
'LocalisationCacheConf' => [
'class' => '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' => [
'copyright',
'history_copyright',
'googlesearch',
],
'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://www.mediawiki.org/',
'alt' => 'Powered by MediaWiki',
],
],
],
'UseCombinedLoginLink' => false,
'Edititis' => false,
'Send404Code' => true,
'ShowRollbackEditCount' => 10,
'EnableCanonicalServerLink' => false,
'InterwikiLogoOverride' => [
],
'ResourceModules' => [
],
'ResourceModuleSkinStyles' => [
],
'ResourceLoaderSources' => [
],
'ResourceBasePath' => null,
'ResourceLoaderMaxage' => [
],
'ResourceLoaderUseObjectCacheForDeps' => false,
'ResourceLoaderDebug' => false,
'ResourceLoaderMaxQueryLength' => false,
'ResourceLoaderValidateJS' => true,
'ResourceLoaderEnableJSProfiler' => false,
'ResourceLoaderStorageEnabled' => true,
'ResourceLoaderStorageVersion' => 1,
'ResourceLoaderEnableSourceMapLinks' => true,
'AllowSiteCSSOnRestrictedPages' => false,
'VueDevelopmentMode' => false,
'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,
],
'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:',
'worldwind://',
'xmpp:',
'//',
],
'CleanSignatures' => true,
'AllowExternalImages' => false,
'AllowExternalImagesFrom' => '',
'EnableImageWhitelist' => false,
'TidyConfig' => [
],
'ParsoidSettings' => [
'useSelser' => true,
],
'ParserEnableLegacyMediaDOM' => false,
'ParserEnableLegacyHeadingDOM' => true,
'UseContentMediaStyles' => false,
'UseLegacyMediaStyles' => false,
'RawHtml' => false,
'ExternalLinkTarget' => false,
'NoFollowLinks' => true,
'NoFollowNsExceptions' => [
],
'NoFollowDomainExceptions' => [
'mediawiki.org',
],
'RegisterInternalExternals' => false,
'AllowDisplayTitle' => true,
'RestrictDisplayTitle' => true,
'ExpensiveParserFunctionLimit' => 100,
'PreprocessorCacheThreshold' => 1000,
'EnableScaryTranscluding' => false,
'TranscludeCacheExpiry' => 3600,
'EnableMagicLinks' => [
'ISBN' => false,
'PMID' => false,
'RFC' => 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' => [
'UserFactory',
],
],
],
'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,
],
],
'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' => 300,
],
'AllowSecuritySensitiveOperationIfCannotReauthenticate' => [
'default' => true,
],
'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,
'watchdefault' => 1,
'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,
'wlenhancedfilters-disable' => 0,
'wllimit' => 250,
],
'ConditionalUserOptions' => [
],
'HiddenPrefs' => [
],
'InvalidUsernameCharacters' => '@:>=',
'UserrightsInterwikiDelimiter' => '@',
'SecureLogin' => false,
'AuthenticationTokenVersion' => null,
'SessionProviders' => [
'MediaWiki\\Session\\CookieSessionProvider' => [
'class' => 'MediaWiki\\Session\\CookieSessionProvider',
'args' => [
[
'priority' => 30,
],
],
],
'MediaWiki\\Session\\BotPasswordSessionProvider' => [
'class' => 'MediaWiki\\Session\\BotPasswordSessionProvider',
'args' => [
[
'priority' => 75,
],
],
'services' => [
'GrantsInfo',
],
],
],
'AllowRequiringEmailForResets' => false,
'AutoCreateTempUser' => [
'known' => false,
'enabled' => false,
'actions' => [
'edit',
],
'genPattern' => '~$1',
'matchPattern' => null,
'reservedPattern' => '~$1',
'serialProvider' => [
'type' => 'local',
'useYear' => true,
],
'serialMapping' => [
'type' => 'plain-numeric',
],
'expireAfterDays' => 365,
'notifyBeforeExpirationDays' => 10,
],
'AutoblockExpiry' => 86400,
'BlockAllowsUTEdit' => true,
'BlockCIDRLimit' => [
'IPv4' => 16,
'IPv6' => 19,
],
'BlockDisablesLogin' => false,
'EnablePartialActionBlocks' => false,
'EnableMultiBlocks' => false,
'BlockTargetMigrationStage' => 768,
'WhitelistRead' => false,
'WhitelistReadRegexp' => false,
'EmailConfirmToEdit' => false,
'HideIdentifiableRedirects' => true,
'GroupPermissions' => [
'*' => [
'createaccount' => true,
'read' => true,
'edit' => true,
'createpage' => true,
'createtalk' => true,
'writeapi' => 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,
'writeapi' => true,
'upload' => true,
'reupload' => true,
'reupload-shared' => true,
'minoredit' => true,
'editmyusercss' => true,
'editmyuserjson' => true,
'editmyuserjs' => true,
'editmyuserjsredirect' => true,
'sendemail' => true,
'applychangetags' => true,
'changetags' => true,
'editcontentmodel' => true,
'viewmywatchlist' => true,
'editmywatchlist' => true,
],
'autoconfirmed' => [
'autoconfirmed' => true,
'editsemiprotected' => true,
],
'bot' => [
'bot' => true,
'autoconfirmed' => true,
'editsemiprotected' => true,
'nominornewtalk' => true,
'autopatrol' => true,
'suppressredirect' => true,
'apihighlimits' => true,
'writeapi' => true,
],
'sysop' => [
'block' => true,
'createaccount' => true,
'delete' => true,
'bigdelete' => true,
'deletedhistory' => true,
'deletedtext' => true,
'undelete' => 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' => [
],
'RestrictionTypes' => [
'create',
'edit',
'move',
'upload',
],
'RestrictionLevels' => [
'',
'autoconfirmed',
'sysop',
],
'CascadingRestrictionLevels' => [
'sysop',
],
'SemiprotectedRestrictionLevels' => [
'autoconfirmed',
],
'NamespaceProtection' => [
],
'NonincludableNamespaces' => [
],
'AutoConfirmAge' => 0,
'AutoConfirmCount' => 0,
'Autopromote' => [
'autoconfirmed' => [
'&',
[
1,
null,
],
[
2,
null,
],
],
],
'AutopromoteOnce' => [
'onEdit' => [
],
],
'AutopromoteOnceLogInRC' => true,
'AddGroups' => [
],
'RemoveGroups' => [
],
'AvailableRights' => [
],
'ImplicitRights' => [
],
'DeleteRevisionsLimit' => 0,
'DeleteRevisionsBatchSize' => 1000,
'HideUserContribLimit' => 1000,
'AccountCreationThrottle' => [
[
'count' => 0,
'seconds' => 86400,
],
],
'TempAccountCreationThrottle' => [
[
'count' => 6,
'seconds' => 86400,
],
],
'TempAccountNameAcquisitionThrottle' => [
[
'count' => 60,
'seconds' => 86400,
],
],
'SpamRegex' => [
],
'SummarySpamRegex' => [
],
'EnableDnsBlacklist' => false,
'DnsBlacklistUrls' => [
'http.dnsbl.sorbs.net.',
],
'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,
'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,
'writeapi' => 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,
],
'editprotected' => [
'edit' => true,
'minoredit' => true,
'applychangetags' => true,
'changetags' => true,
'editcontentmodel' => true,
'editprotected' => true,
],
'editmycssjs' => [
'edit' => true,
'minoredit' => true,
'applychangetags' => true,
'changetags' => true,
'editcontentmodel' => true,
'editmyusercss' => true,
'editmyuserjson' => true,
'editmyuserjs' => true,
],
'editmyoptions' => [
'editmyoptions' => true,
'editmyuserjson' => true,
],
'editinterface' => [
'edit' => true,
'minoredit' => true,
'applychangetags' => true,
'changetags' => true,
'editcontentmodel' => true,
'editinterface' => true,
'edituserjson' => true,
'editsitejson' => true,
],
'editsiteconfig' => [
'edit' => true,
'minoredit' => true,
'applychangetags' => true,
'changetags' => true,
'editcontentmodel' => 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,
'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,
'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,
'editprotected' => true,
'protect' => true,
],
'viewmywatchlist' => [
'viewmywatchlist' => true,
],
'editmywatchlist' => [
'editmywatchlist' => true,
],
'sendemail' => [
'sendemail' => true,
],
'createaccount' => [
'createaccount' => true,
],
'privateinfo' => [
'viewmyprivateinfo' => true,
],
'mergehistory' => [
'mergehistory' => 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',
],
'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,
'SecretKey' => false,
'AllowUserJs' => false,
'AllowUserCss' => false,
'AllowUserCssPrefs' => true,
'UseSiteJs' => true,
'UseSiteCss' => true,
'BreakFrames' => false,
'EditPageFrameOptions' => 'DENY',
'ApiFrameOptions' => 'DENY',
'CSPHeader' => false,
'CSPReportOnlyHeader' => false,
'CSPFalsePositiveUrls' => [
'https://3hub.co' => true,
'https://morepro.info' => true,
'https://p.ato.mx' => true,
'https://s.ato.mx' => true,
'https://adserver.adtech.de' => true,
'https://ums.adtechus.com' => true,
'https://cas.criteo.com' => true,
'https://cat.nl.eu.criteo.com' => true,
'https://atpixel.alephd.com' => true,
'https://rtb.metrigo.com' => true,
'https://d5p.de17a.com' => true,
'https://ad.lkqd.net/vpaid/vpaid.js' => true,
'https://ad.lkqd.net/vpaid/vpaid.js?fusion=1.0' => true,
'https://t.lkqd.net/t' => true,
'chrome-extension' => true,
],
'AllowCrossOrigin' => false,
'RestAllowCrossOriginCookieAuth' => false,
'SessionSecret' => false,
'HKDFSecret' => false,
'HKDFAlgorithm' => 'sha256',
'CookieExpiration' => 2592000,
'ExtendedLoginCookieExpiration' => 15552000,
'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',
'StatsdSamplingRates' => [
],
'StatsTarget' => null,
'StatsFormat' => null,
'StatsPrefix' => 'mediawiki',
'PageInfoTransclusionLimit' => 50,
'EnableJavaScriptTest' => false,
'CachePrefix' => false,
'DebugToolbar' => false,
'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,
'EnableSearchContributorsByIP' => true,
'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://(?:[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',
],
'RCMaxAge' => 7776000,
'WatchersMaxAge' => 15552000,
'UnwatchedPageSecret' => 1,
'RCFilterByAge' => false,
'RCLinkLimits' => [
50,
100,
250,
500,
],
'RCLinkDays' => [
1,
3,
7,
14,
30,
],
'RCFeeds' => [
],
'RCEngines' => [
'redis' => 'MediaWiki\\RCFeed\\RedisPubSubFeedEngine',
'udp' => 'MediaWiki\\RCFeed\\UDPRCFeedEngine',
],
'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-rollback' => true,
'mw-undo' => true,
'mw-manual-revert' => true,
'mw-reverted' => true,
'mw-server-side-upload' => true,
],
'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,
'WatchlistPurgeRate' => 0.1,
'WatchlistExpiryMaxDuration' => '1 year',
'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' => 'DeletePageJob',
'refreshLinks' => 'RefreshLinksJob',
'deleteLinks' => 'DeleteLinksJob',
'htmlCacheUpdate' => 'HTMLCacheUpdateJob',
'sendMail' => [
'class' => 'EmaillingJob',
'services' => [
'Emailer',
],
],
'enotifNotify' => 'EnotifNotifyJob',
'fixDoubleRedirect' => [
'class' => 'DoubleRedirectJob',
'services' => [
'RevisionLookup',
'MagicWordFactory',
'WikiPageFactory',
],
'needsPage' => true,
],
'AssembleUploadChunks' => 'AssembleUploadChunksJob',
'PublishStashedFile' => 'PublishStashedFileJob',
'ThumbnailRender' => 'ThumbnailRenderJob',
'UploadFromUrl' => 'UploadFromUrlJob',
'recentChangesUpdate' => 'RecentChangesUpdateJob',
'refreshLinksPrioritized' => 'RefreshLinksJob',
'refreshLinksDynamic' => 'RefreshLinksJob',
'activityUpdateJob' => 'MediaWiki\\Watchlist\\ActivityUpdateJob',
'categoryMembershipChange' => 'CategoryMembershipChangeJob',
'clearUserWatchlist' => 'MediaWiki\\Watchlist\\ClearUserWatchlistJob',
'watchlistExpiry' => 'MediaWiki\\Watchlist\\WatchlistExpiryJob',
'cdnPurge' => 'CdnPurgeJob',
'userGroupExpiry' => 'UserGroupExpiryJob',
'clearWatchlistNotifications' => 'MediaWiki\\Watchlist\\ClearWatchlistNotificationsJob',
'userOptionsUpdate' => 'UserOptionsUpdateJob',
'revertedTagUpdate' => 'RevertedTagUpdateJob',
'null' => 'NullJob',
'userEditCountInit' => 'UserEditCountInitJob',
'parsoidCachePrewarm' => [
'class' => 'ParsoidCachePrewarmJob',
'services' => [
'ParsoidOutputAccess',
'PageStore',
'RevisionLookup',
'ParsoidSiteConfig',
],
'needsPage' => false,
],
'renameUser' => [
'class' => 'MediaWiki\\RenameUser\\RenameUserJob',
'services' => [
'MainConfig',
'DBLoadBalancerFactory',
],
],
],
'JobTypesExcludedFromDefaultQueue' => [
'AssembleUploadChunks',
'PublishStashedFile',
'UploadFromUrl',
],
'JobBackoffThrottling' => [
],
'JobTypeConf' => [
'default' => [
'class' => 'JobQueueDB',
'order' => 'random',
'claimTTL' => 3600,
],
],
'JobQueueIncludeInMaxLagFactor' => false,
'SpecialPageCacheUpdates' => [
'Statistics' => [
'MediaWiki\\Deferred\\SiteStatsUpdate',
'cacheUpdate',
],
],
'PagePropLinkInvalidations' => [
'hiddencat' => 'categorylinks',
],
'CategoryMagicGallery' => true,
'CategoryPagingLimit' => 200,
'CategoryCollation' => 'uppercase',
'TempCategoryCollations' => [
],
'TrackingCategories' => [
],
'LogTypes' => [
'',
'block',
'protect',
'rights',
'delete',
'upload',
'move',
'import',
'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' => 'BlockLogFormatter',
'block/reblock' => 'BlockLogFormatter',
'block/unblock' => 'BlockLogFormatter',
'contentmodel/change' => 'ContentModelLogFormatter',
'contentmodel/new' => 'ContentModelLogFormatter',
'delete/delete' => 'DeleteLogFormatter',
'delete/delete_redir' => 'DeleteLogFormatter',
'delete/delete_redir2' => 'DeleteLogFormatter',
'delete/event' => 'DeleteLogFormatter',
'delete/restore' => 'DeleteLogFormatter',
'delete/revision' => 'DeleteLogFormatter',
'import/interwiki' => 'ImportLogFormatter',
'import/upload' => 'ImportLogFormatter',
'managetags/activate' => 'LogFormatter',
'managetags/create' => 'LogFormatter',
'managetags/deactivate' => 'LogFormatter',
'managetags/delete' => 'LogFormatter',
'merge/merge' => 'MergeLogFormatter',
'move/move' => 'MoveLogFormatter',
'move/move_redir' => 'MoveLogFormatter',
'patrol/patrol' => 'PatrolLogFormatter',
'patrol/autopatrol' => 'PatrolLogFormatter',
'protect/modify' => 'ProtectLogFormatter',
'protect/move_prot' => 'ProtectLogFormatter',
'protect/protect' => 'ProtectLogFormatter',
'protect/unprotect' => 'ProtectLogFormatter',
'renameuser/renameuser' => 'RenameuserLogFormatter',
'rights/autopromote' => 'RightsLogFormatter',
'rights/rights' => 'RightsLogFormatter',
'suppress/block' => 'BlockLogFormatter',
'suppress/delete' => 'DeleteLogFormatter',
'suppress/event' => 'DeleteLogFormatter',
'suppress/reblock' => 'BlockLogFormatter',
'suppress/revision' => 'DeleteLogFormatter',
'tag/update' => 'TagLogFormatter',
'upload/overwrite' => 'UploadLogFormatter',
'upload/revert' => 'UploadLogFormatter',
'upload/upload' => '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,
'APIRequestLog' => false,
'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',
'Access-Control-Max-Age',
'Authorization',
],
'RestAPIAdditionalRouteFiles' => [
],
'RestSandboxSpecs' => [
],
'MaxShellMemory' => 307200,
'MaxShellFileSize' => 102400,
'MaxShellTime' => 180,
'MaxShellWallClockTime' => 180,
'ShellCgroup' => false,
'PhpCli' => '/usr/bin/php',
'ShellRestrictionMethod' => 'autodetect',
'ShellboxUrls' => [
'default' => null,
],
'ShellboxSecretKey' => null,
2023-12-04 00:09:12 +00:00
'ShellboxShell' => '/bin/sh',
'HTTPTimeout' => 25,
'HTTPConnectTimeout' => 5.0,
'HTTPMaxTimeout' => 0,
'HTTPMaxConnectTimeout' => 0,
'HTTPImportTimeout' => 25,
'AsyncHTTPTimeout' => 25,
'HTTPProxy' => '',
'LocalVirtualHosts' => [
],
'LocalHTTPProxy' => false,
'AllowExternalReqID' => false,
'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' => [
],
'EnableEditRecovery' => false,
'EditRecoveryExpiry' => 2592000,
'UseCodexSpecialBlock' => false,
'ShowLogoutConfirmation' => false,
'EnableProtectionIndicators' => false,
],
'type' => [
'ConfigRegistry' => 'object',
'AssumeProxiesUseDefaultProtocolPorts' => 'boolean',
'ForceHTTPS' => 'boolean',
'ExtensionDirectory' => [
'string',
'null',
],
'StyleDirectory' => [
'string',
'null',
],
'Logos' => [
'object',
'boolean',
],
'ReferrerPolicy' => [
'array',
'string',
'boolean',
],
'ActionPaths' => 'object',
'MainPageIsDomainRoot' => 'boolean',
'ImgAuthUrlPathMap' => 'object',
'LocalFileRepo' => [
'object',
'boolean',
],
'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',
'CopyUploadsDomains' => 'array',
'CopyUploadTimeout' => [
'boolean',
'integer',
],
'SharedThumbnailScriptPath' => [
'string',
'boolean',
],
'HashedUploadDirectory' => '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',
Introduce SearchResultThumbnailProvider & move hook + NS_FILE thumbs in What was previously a REST API-only feature (the thumbnails hook allowing for thumbnails for non-file pages via the PageImages extension) is now also being adopted in the main search page. That hook will now be called with NS_FILE result thumbnails pre-filled, which was not the case previously. PageImages essentially duplicated NS_FILE thumbnail logic that was already present in Special:Search, so that can (and will in a follow-up patch) then be removed there. Special:Search will then simply take whatever is produced from the provider (which will include both NS_FILE thumbs - which it handled already - as well as whatever else it receives from the hook), as will the REST API (which already received both) Since thumbnails can now come in for multiple namespaces & having some of those results with & others without a thumbnail can be quite jarring, it was decided that we'd display placeholder images (for certain namespaces). This is now controlled by $wgThumbnailNamespaces. I also split up a few things in FullSearchResultWidget:: generateFileHtml for more clarity. Meanwhile also updated mediawiki.special.search.styles.less to use variables for known colors. Also implemented a 'transform' (required for testing this change properly) and 'getDisplayWidthHeight' (it became needed after implementing transform) callback function for mock Files, and updated some existing tests in response to these changes. And some more Rest test files have been updated to allow passing around a HookContainer instead of only an array of hooks (from which a new HookContainer would then be created) to allow the same container to be used across all relevant objects, who may have it injected as dependency. Bug: T306883 Change-Id: I2a679b51758020d3e822da01a1bde1ae632b0b0a
2022-08-31 14:51:57 +00:00
'ThumbnailNamespaces' => 'array',
'ThumbnailBuckets' => [
'array',
'null',
],
'UploadThumbnailRenderMap' => 'object',
'GalleryOptions' => 'object',
'DjvuDump' => [
'string',
'null',
],
'DjvuRenderer' => [
'string',
'null',
],
'DjvuTxt' => [
'string',
'null',
],
'DjvuPostProcessor' => [
'string',
'null',
],
'SMTP' => [
'boolean',
'object',
],
'EnotifFromEditor' => 'boolean',
'EnotifRevealEditorAddress' => 'boolean',
'UsersNotifiedOnAllChanges' => 'object',
'DBmwschema' => [
'string',
'null',
],
'SharedTables' => 'array',
'DBservers' => [
'boolean',
'array',
],
'LBFactoryConf' => 'object',
'LocalDatabases' => 'array',
'VirtualDomainsMapping' => 'object',
'PageLinksSchemaMigrationStage' => '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',
objectcache: Remove $wgMainWANCache and $wgWANObjectCaches We always wrap the local cluster cache, and there are no subclasses of WANObjectCache. It was never documented or recommended how these would be used. It is a left-over from the original 2015 Multi-DC plan in which WANObjectCache would work differently. See task for details. Note that this requires no configuration changes, even in the theoretical case of these variables being used, as the only option is to use the main cache, and that's also the default. * Update WAN overrides to override the underlying main cache instead. * Fix EditPageTest which was previously implicitly using a 'hash' as main cache but also relying on wan cache to be 'none'. The part that it actually needs is the 'none'. When WAN cache is enabled, testUpdateNoMinor fails due to an edit conflict because one of the edits it makes is made with a current timestamp whereas it expects to simulate wpEdittime in the year 2012 which, when caching is enabled, is ignored and becomes the current time instead. I don't understand exactly why, but I'm going to conserve that behaviour for now. * Fix TemplateCategoriesTest, which was failing due to an unexpected cache hit: > [objectcache] fetchOrRegenerate(…:page:10:…): volatile hit This could be solved in a more realistic way by splitting the test, or by explicitly resetting services half-way the test to clear WikiPageFactory, PageStore and WANCache process state. For now, keep the prior behaviour of no cache in this test. Bug: T305093 Bug: T329680 Depends-On: If890622eed0d0f8b4bd73d36ba1815a3d760ea05 Depends-On: Ie1def75208822bdf19bb2cfd7e6edf32c2000e6b Depends-On: I35cce61dc3ee90dcee3dd6f0b36f84133be029ed Change-Id: I53781a8c06ebb2583f6ca83dd91bbfe8a5c88b13
2023-02-14 21:43:12 +00:00
'WANObjectCache' => 'object',
'MicroStashType' => [
'string',
'integer',
],
'ParsoidCacheConfig' => 'object',
'ParserCacheFilterConfig' => 'object',
'ChronologyProtectorStash' => [
'string',
'null',
],
'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',
'ContentNamespaces' => 'array',
'ShortPagesNamespaceExclusions' => 'array',
'ExtraSignatureNamespaces' => 'array',
'InvalidRedirectTargets' => 'array',
'LocalInterwikis' => 'array',
'InterwikiCache' => [
'boolean',
'object',
],
'SiteTypes' => 'object',
'UrlProtocols' => 'array',
'TidyConfig' => 'object',
'ParsoidSettings' => 'object',
'NoFollowNsExceptions' => 'array',
'NoFollowDomainExceptions' => 'array',
'EnableMagicLinks' => 'object',
'ManualRevertSearchRadius' => 'integer',
'RevertedTagMaxDepth' => 'integer',
'CentralIdLookupProviders' => 'object',
'CentralIdLookupProvider' => 'string',
'UserRegistrationProviders' => 'object',
'PasswordPolicy' => 'object',
'AuthManagerConfig' => [
'object',
'null',
],
'AuthManagerAutoConfig' => 'object',
'RememberMe' => 'string',
'ReauthenticateTime' => 'object',
'AllowSecuritySensitiveOperationIfCannotReauthenticate' => 'object',
'ChangeCredentialsBlacklist' => 'array',
'RemoveCredentialsBlacklist' => 'array',
'PasswordConfig' => 'object',
'PasswordResetRoutes' => 'object',
'SignatureAllowedLintErrors' => 'array',
'ReservedUsernames' => 'array',
'DefaultUserOptions' => 'object',
'ConditionalUserOptions' => 'object',
'HiddenPrefs' => 'array',
'AuthenticationTokenVersion' => [
'string',
'null',
],
'SessionProviders' => 'object',
'AutoCreateTempUser' => 'object',
'BlockCIDRLimit' => 'object',
'EnablePartialActionBlocks' => 'boolean',
'EnableMultiBlocks' => 'boolean',
'BlockTargetMigrationStage' => 'integer',
'GroupPermissions' => 'object',
'PrivilegedGroups' => 'array',
'RevokePermissions' => 'object',
'GroupInheritsPermissions' => 'object',
'ImplicitGroups' => 'array',
'GroupsAddToSelf' => 'object',
'GroupsRemoveFromSelf' => 'object',
'RestrictionTypes' => 'array',
'RestrictionLevels' => 'array',
'CascadingRestrictionLevels' => 'array',
'SemiprotectedRestrictionLevels' => 'array',
'NamespaceProtection' => 'object',
'NonincludableNamespaces' => 'object',
'Autopromote' => 'object',
'AutopromoteOnce' => 'object',
'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',
'PasswordAttemptThrottle' => 'array',
'GrantPermissions' => 'object',
'GrantPermissionGroups' => 'object',
'GrantRiskGroups' => 'object',
'EnableBotPasswords' => 'boolean',
'BotPasswordsCluster' => [
'string',
'boolean',
],
'BotPasswordsDatabase' => [
'string',
'boolean',
],
'CSPHeader' => [
'boolean',
'object',
],
'CSPReportOnlyHeader' => [
'boolean',
'object',
],
'CSPFalsePositiveUrls' => 'object',
'AllowCrossOrigin' => 'boolean',
'RestAllowCrossOriginCookieAuth' => 'boolean',
'CookieSameSite' => [
'string',
'null',
],
'CacheVaryCookies' => 'array',
'TrxProfilerLimits' => 'object',
'DebugLogGroups' => 'object',
'MWLoggerDefaultSpi' => 'object',
'Profiler' => 'object',
'StatsdSamplingRates' => 'object',
'StatsTarget' => [
'string',
'null',
],
'StatsFormat' => [
'string',
'null',
],
'StatsPrefix' => 'string',
'OpenSearchTemplates' => 'object',
'NamespacesToBeSearchedDefault' => 'object',
'SitemapNamespaces' => [
'boolean',
'array',
],
'SitemapNamespacesPriorities' => [
'boolean',
'object',
],
'SpecialSearchFormOptions' => 'object',
'SearchMatchRedirectPreference' => 'boolean',
'SearchRunSuggestedQuery' => 'boolean',
'PreviewOnOpenNamespaces' => 'object',
'ReadOnlyWatchedItemStore' => 'boolean',
'GitRepositoryViewers' => 'object',
'RCLinkLimits' => 'array',
'RCLinkDays' => 'array',
'RCFeeds' => 'object',
'RCEngines' => 'object',
'OverrideSiteFeed' => 'object',
'FeedClasses' => 'object',
'AdvertisedFeedTypes' => 'array',
'SoftwareTags' => 'object',
'RecentChangesFlags' => 'object',
'WatchlistExpiry' => 'boolean',
'WatchlistPurgeRate' => 'number',
'WatchlistExpiryMaxDuration' => [
'string',
'null',
],
'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',
'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',
'ShellRestrictionMethod' => [
'string',
'boolean',
],
'ShellboxUrls' => 'object',
'ShellboxSecretKey' => [
'string',
'null',
],
2023-12-04 00:09:12 +00:00
'ShellboxShell' => [
'string',
'null',
2023-12-04 00:09:12 +00:00
],
'HTTPTimeout' => 'number',
'HTTPConnectTimeout' => 'number',
'HTTPMaxTimeout' => 'number',
'HTTPMaxConnectTimeout' => 'number',
'LocalVirtualHosts' => 'object',
'LocalHTTPProxy' => [
'string',
'boolean',
],
'VirtualRestConfig' => 'object',
'EventRelayerConfig' => 'object',
'Pingback' => 'boolean',
'OriginTrials' => 'array',
'ReportToExpiry' => 'integer',
'ReportToEndpoints' => 'array',
'FeaturePolicyReportOnly' => 'array',
'SkinsPreferred' => 'array',
'SpecialContributeSkinsEnabled' => 'array',
'EnableEditRecovery' => 'boolean',
'EditRecoveryExpiry' => 'integer',
'UseCodexSpecialBlock' => 'boolean',
'ShowLogoutConfirmation' => 'boolean',
'EnableProtectionIndicators' => 'boolean',
],
'mergeStrategy' => [
'TiffThumbnailType' => 'replace',
'LBFactoryConf' => 'replace',
'InterwikiCache' => 'replace',
'PasswordPolicy' => 'array_replace_recursive',
'AuthManagerAutoConfig' => 'array_plus_2d',
'GroupPermissions' => 'array_plus_2d',
'RevokePermissions' => 'array_plus_2d',
'RateLimits' => 'array_plus_2d',
'GrantPermissions' => 'array_plus_2d',
'MWLoggerDefaultSpi' => 'replace',
'Profiler' => 'replace',
'Hooks' => 'array_merge_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',
],
],
'UploadDirectory' => [
'use' => [
'BaseDirectory',
],
'callback' => [
'MediaWiki\\MainConfigSchema',
'getDefaultUploadDirectory',
],
],
'FileCacheDirectory' => [
'use' => [
'UploadDirectory',
],
'callback' => [
'MediaWiki\\MainConfigSchema',
'getDefaultFileCacheDirectory',
],
],
'Logo' => [
'use' => [
'ResourceBasePath',
],
'callback' => [
'MediaWiki\\MainConfigSchema',
'getDefaultLogo',
],
],
'DeletedDirectory' => [
'use' => [
'UploadDirectory',
],
'callback' => [
'MediaWiki\\MainConfigSchema',
'getDefaultDeletedDirectory',
],
],
'LocalFileRepo' => [
'use' => [
'UploadDirectory',
'ScriptPath',
'Favicon',
'UploadBaseUrl',
'UploadPath',
'HashedUploadDirectory',
'ThumbnailScriptPath',
'GenerateThumbnailOnParse',
'DeletedDirectory',
'UpdateCompatibleMetadata',
],
'callback' => [
'MediaWiki\\MainConfigSchema',
'getDefaultLocalFileRepo',
],
],
'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',
],
Introduce SearchResultThumbnailProvider & move hook + NS_FILE thumbs in What was previously a REST API-only feature (the thumbnails hook allowing for thumbnails for non-file pages via the PageImages extension) is now also being adopted in the main search page. That hook will now be called with NS_FILE result thumbnails pre-filled, which was not the case previously. PageImages essentially duplicated NS_FILE thumbnail logic that was already present in Special:Search, so that can (and will in a follow-up patch) then be removed there. Special:Search will then simply take whatever is produced from the provider (which will include both NS_FILE thumbs - which it handled already - as well as whatever else it receives from the hook), as will the REST API (which already received both) Since thumbnails can now come in for multiple namespaces & having some of those results with & others without a thumbnail can be quite jarring, it was decided that we'd display placeholder images (for certain namespaces). This is now controlled by $wgThumbnailNamespaces. I also split up a few things in FullSearchResultWidget:: generateFileHtml for more clarity. Meanwhile also updated mediawiki.special.search.styles.less to use variables for known colors. Also implemented a 'transform' (required for testing this change properly) and 'getDisplayWidthHeight' (it became needed after implementing transform) callback function for mock Files, and updated some existing tests in response to these changes. And some more Rest test files have been updated to allow passing around a HookContainer instead of only an array of hooks (from which a new HookContainer would then be created) to allow the same container to be used across all relevant objects, who may have it injected as dependency. Bug: T306883 Change-Id: I2a679b51758020d3e822da01a1bde1ae632b0b0a
2022-08-31 14:51:57 +00:00
'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',
],
],
],
],
],
'RawHtmlMessages' => [
'items' => [
'type' => 'string',
],
],
'InterwikiLogoOverride' => [
'items' => [
'type' => 'string',
],
],
'LegalTitleChars' => [
'deprecated' => 'since 1.41; use Extension:TitleBlacklist to customize',
],
'ParserEnableLegacyMediaDOM' => [
'deprecated' => 'since 1.41',
],
'UseContentMediaStyles' => [
'deprecated' => 'since 1.41',
],
'ReauthenticateTime' => [
'additionalProperties' => [
'type' => 'integer',
],
],
'AllowSecuritySensitiveOperationIfCannotReauthenticate' => [
'additionalProperties' => [
'type' => 'boolean',
],
],
'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',
],
],
'GrantPermissions' => [
'additionalProperties' => [
'type' => 'object',
'additionalProperties' => [
'type' => 'boolean',
],
],
],
'GrantPermissionGroups' => [
'additionalProperties' => [
'type' => 'string',
],
],
'SoftwareTags' => [
'additionalProperties' => [
'type' => 'boolean',
],
],
'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',
],
'msg' => [
'type' => 'string',
'description' => 'a message key',
],
],
'required' => [
'url',
],
],
],
'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.',
],
];