* MediaWiki version number
* @since 1.2
*/
-$wgVersion = '1.31.0-alpha';
+$wgVersion = '1.31.3';
/**
* Name of the site. It must be changed in LocalSettings.php
( strpos( PHP_SAPI, 'apache2filter' ) === false ) &&
( strpos( PHP_SAPI, 'isapi' ) === false );
-/**
- * The extension to append to script names by default.
- *
- * Some hosting providers used PHP 4 for *.php files, and PHP 5 for *.php5.
- * This variable was provided to support those providers.
- *
- * @since 1.11
- * @deprecated since 1.25; support for '.php5' has been phased out of MediaWiki
- * proper. Backward-compatibility can be maintained by configuring your web
- * server to rewrite URLs. See RELEASE-NOTES for details.
- */
-$wgScriptExtension = '.php';
-
/**@}*/
/************************************************************************//**
* - descBaseUrl URL of image description pages, e.g. https://en.wikipedia.org/wiki/File:
* - scriptDirUrl URL of the MediaWiki installation, equivalent to $wgScriptPath, e.g.
* https://en.wikipedia.org/w
- * - scriptExtension Script extension of the MediaWiki installation, equivalent to
- * $wgScriptExtension, e.g. ".php5". Defaults to ".php".
- *
* - articleUrl Equivalent to $wgArticlePath, e.g. https://en.wikipedia.org/wiki/$1
* - fetchDescription Fetch the text of the remote file description page. Equivalent to
* $wgFetchCommonsDescriptions.
*/
$wgContentHandlers = [
// the usual case
- CONTENT_MODEL_WIKITEXT => 'WikitextContentHandler',
+ CONTENT_MODEL_WIKITEXT => WikitextContentHandler::class,
// dumb version, no syntax highlighting
- CONTENT_MODEL_JAVASCRIPT => 'JavaScriptContentHandler',
+ CONTENT_MODEL_JAVASCRIPT => JavaScriptContentHandler::class,
// simple implementation, for use by extensions, etc.
- CONTENT_MODEL_JSON => 'JsonContentHandler',
+ CONTENT_MODEL_JSON => JsonContentHandler::class,
// dumb version, no syntax highlighting
- CONTENT_MODEL_CSS => 'CssContentHandler',
+ CONTENT_MODEL_CSS => CssContentHandler::class,
// plain text, for use by extensions, etc.
- CONTENT_MODEL_TEXT => 'TextContentHandler',
+ CONTENT_MODEL_TEXT => TextContentHandler::class,
];
/**
* Whether to use SSL in DB connection.
*
* This setting is only used if $wgLBFactoryConf['class'] is set to
- * 'LBFactorySimple' and $wgDBservers is an empty array; otherwise
+ * '\Wikimedia\Rdbms\LBFactorySimple' and $wgDBservers is an empty array; otherwise
* the DBO_SSL flag must be set in the 'flags' option of the database
* connection to achieve the same functionality.
*/
* Whether to use compression in DB connection.
*
* This setting is only used $wgLBFactoryConf['class'] is set to
- * 'LBFactorySimple' and $wgDBservers is an empty array; otherwise
+ * '\Wikimedia\Rdbms\LBFactorySimple' and $wgDBservers is an empty array; otherwise
* the DBO_COMPRESS flag must be set in the 'flags' option of the database
* connection to achieve the same functionality.
*/
* - user: DB user
* - password: DB password
* - type: DB type
+ * - driver: DB driver (when there are multiple drivers)
*
* - load: Ratio of DB_REPLICA load, must be >=0, the sum of all loads must be >0.
* If this is zero for any given server, no normal query traffic will be
* The LBFactoryMulti class is provided for this purpose, please see
* includes/db/LBFactoryMulti.php for configuration information.
*/
-$wgLBFactoryConf = [ 'class' => 'LBFactorySimple' ];
+$wgLBFactoryConf = [ 'class' => \Wikimedia\Rdbms\LBFactorySimple::class ];
/**
* After a state-changing request is done by a client, this determines
* Even correct usage may cause failures with Unicode supplementary
* characters (those not in the Basic Multilingual Plane) unless MySQL
* has enhanced their Unicode support.
+ *
+ * @deprecated since 1.31
*/
$wgDBmysql5 = false;
* ];
* @endcode
*
- * Used by LBFactorySimple, may be ignored if $wgLBFactoryConf is set to
+ * Used by \Wikimedia\Rdbms\LBFactorySimple, may be ignored if $wgLBFactoryConf is set to
* another class.
*/
$wgExternalServers = [];
* - CACHE_NONE: Do not cache
* - CACHE_DB: Store cache objects in the DB
* - CACHE_MEMCACHED: MemCached, must specify servers in $wgMemCachedServers
- * - CACHE_ACCEL: APC, APCU, XCache or WinCache
+ * - CACHE_ACCEL: APC, APCU or WinCache
* - (other): A string may be used which identifies a cache
* configuration in $wgObjectCaches.
*
* given, giving a callable function which will generate a suitable cache object.
*/
$wgObjectCaches = [
- CACHE_NONE => [ 'class' => 'EmptyBagOStuff', 'reportDupes' => false ],
- CACHE_DB => [ 'class' => 'SqlBagOStuff', 'loggroup' => 'SQLBagOStuff' ],
+ CACHE_NONE => [ 'class' => EmptyBagOStuff::class, 'reportDupes' => false ],
+ CACHE_DB => [ 'class' => SqlBagOStuff::class, 'loggroup' => 'SQLBagOStuff' ],
CACHE_ANYTHING => [ 'factory' => 'ObjectCache::newAnything' ],
CACHE_ACCEL => [ 'factory' => 'ObjectCache::getLocalServerInstance' ],
- CACHE_MEMCACHED => [ 'class' => 'MemcachedPhpBagOStuff', 'loggroup' => 'memcached' ],
+ CACHE_MEMCACHED => [ 'class' => MemcachedPhpBagOStuff::class, 'loggroup' => 'memcached' ],
'db-replicated' => [
- 'class' => 'ReplicatedBagOStuff',
+ 'class' => ReplicatedBagOStuff::class,
'readFactory' => [
- 'class' => 'SqlBagOStuff',
+ 'class' => SqlBagOStuff::class,
'args' => [ [ 'slaveOnly' => true ] ]
],
'writeFactory' => [
- 'class' => 'SqlBagOStuff',
+ 'class' => SqlBagOStuff::class,
'args' => [ [ 'slaveOnly' => false ] ]
],
'loggroup' => 'SQLBagOStuff',
'reportDupes' => false
],
- 'apc' => [ 'class' => 'APCBagOStuff', 'reportDupes' => false ],
- 'apcu' => [ 'class' => 'APCUBagOStuff', 'reportDupes' => false ],
- 'xcache' => [ 'class' => 'XCacheBagOStuff', 'reportDupes' => false ],
- 'wincache' => [ 'class' => 'WinCacheBagOStuff', 'reportDupes' => false ],
- 'memcached-php' => [ 'class' => 'MemcachedPhpBagOStuff', 'loggroup' => 'memcached' ],
- 'memcached-pecl' => [ 'class' => 'MemcachedPeclBagOStuff', 'loggroup' => 'memcached' ],
- 'hash' => [ 'class' => 'HashBagOStuff', 'reportDupes' => false ],
+ 'apc' => [ 'class' => APCBagOStuff::class, 'reportDupes' => false ],
+ 'apcu' => [ 'class' => APCUBagOStuff::class, 'reportDupes' => false ],
+ 'wincache' => [ 'class' => WinCacheBagOStuff::class, 'reportDupes' => false ],
+ 'memcached-php' => [ 'class' => MemcachedPhpBagOStuff::class, 'loggroup' => 'memcached' ],
+ 'memcached-pecl' => [ 'class' => MemcachedPeclBagOStuff::class, 'loggroup' => 'memcached' ],
+ 'hash' => [ 'class' => HashBagOStuff::class, 'reportDupes' => false ],
];
/**
*/
$wgWANObjectCaches = [
CACHE_NONE => [
- 'class' => 'WANObjectCache',
+ 'class' => WANObjectCache::class,
'cacheId' => CACHE_NONE,
'channels' => []
]
/* Example of a simple single data-center cache:
'memcached-php' => [
- 'class' => 'WANObjectCache',
+ 'class' => WANObjectCache::class,
'cacheId' => 'memcached-php',
'channels' => [ 'purge' => 'wancache-main-memcached-purge' ]
]
* Use maintenance/rebuildLocalisationCache.php instead.
*/
$wgLocalisationCacheConf = [
- 'class' => 'LocalisationCache',
+ 'class' => LocalisationCache::class,
'store' => 'detect',
'storeClass' => false,
'storeDirectory' => false,
*/
$wgSiteSupportPage = '';
-/**
- * Validate the overall output using tidy and refuse
- * to display the page if it's not valid.
- */
-$wgValidateAllHtml = false;
-
/**
* Default skin, for new users and anonymous visitors. Registered users may
* change this to any one of the other available skins in their preferences.
$wgAllowUserCss = false;
/**
- * Allow user-preferences implemented in CSS?
- * This allows users to customise the site appearance to a greater
- * degree; disabling it will improve page load times.
+ * Allow style-related user-preferences?
+ *
+ * This controls whether the `editfont` and `underline` preferences
+ * are availabe to users.
*/
$wgAllowUserCssPrefs = true;
*
* @since 1.30
*/
-$wgFragmentMode = [ 'legacy' ];
+$wgFragmentMode = [ 'legacy', 'html5' ];
/**
* Which ID escaping mode should be used for external interwiki links? See documentation
*/
$wgResourceLoaderLESSVars = [
/**
- * Minimum available screen width at which a device can be considered a tablet/desktop
+ * Minimum available screen width at which a device can be considered a tablet
* The number is currently based on the device width of a Samsung Galaxy S5 mini and is low
* enough to cover iPad (768px). Number is prone to change with new information.
* @since 1.27
+ * @deprecated 1.31 Use mediawiki.ui/variables instead
*/
'deviceWidthTablet' => '720px',
];
* because articles can be created such that they are hard to view or edit.
*
* In some rare cases you may wish to remove + for compatibility with old links.
- *
- * Theoretically 0x80-0x9F of ISO 8859-1 should be disallowed, but
- * this breaks interlanguage links
*/
$wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+";
* an extension setup function.
*/
$wgParserConf = [
- 'class' => 'Parser',
- # 'preprocessorClass' => 'Preprocessor_Hash',
+ 'class' => Parser::class,
+ # 'preprocessorClass' => Preprocessor_Hash::class,
];
/**
/**
* Configuration for HTML postprocessing tool. Set this to a configuration
- * array to enable an external tool. Dave Raggett's "HTML Tidy" is typically
- * used. See https://www.w3.org/People/Raggett/tidy/
+ * array to enable an external tool. By default, we now use the RemexHtml
+ * library; historically, Dave Raggett's "HTML Tidy" was typically used.
+ * See https://www.w3.org/People/Raggett/tidy/
*
* If this is null and $wgUseTidy is true, the deprecated configuration
* parameters will be used instead.
* - tidyBin: For RaggettExternal, the path to the tidy binary.
* - tidyCommandLine: For RaggettExternal, additional command line options.
*/
-$wgTidyConfig = null;
+$wgTidyConfig = [ 'driver' => 'RemexHtml' ];
/**
* Set this to true to use the deprecated tidy configuration parameters.
*
* This variable can have the following values:
* - 'any': all pages as considered as valid articles
- * - 'comma': the page must contain a comma to be considered valid
* - 'link': the page must contain a [[wiki link]] to be considered valid
*
* See also See https://www.mediawiki.org/wiki/Manual:Article_count
* @since 1.27
*/
$wgCentralIdLookupProviders = [
- 'local' => [ 'class' => 'LocalIdLookup' ],
+ 'local' => [ 'class' => LocalIdLookup::class ],
];
/**
* An advanced example:
* @code
* $wgPasswordConfig['bcrypt-peppered'] = [
- * 'class' => 'EncryptedPassword',
+ * 'class' => EncryptedPassword::class,
* 'underlying' => 'bcrypt',
* 'secrets' => [],
* 'cipher' => MCRYPT_RIJNDAEL_256,
*/
$wgPasswordConfig = [
'A' => [
- 'class' => 'MWOldPassword',
+ 'class' => MWOldPassword::class,
],
'B' => [
- 'class' => 'MWSaltedPassword',
+ 'class' => MWSaltedPassword::class,
],
'pbkdf2-legacyA' => [
- 'class' => 'LayeredParameterizedPassword',
+ 'class' => LayeredParameterizedPassword::class,
'types' => [
'A',
'pbkdf2',
],
],
'pbkdf2-legacyB' => [
- 'class' => 'LayeredParameterizedPassword',
+ 'class' => LayeredParameterizedPassword::class,
'types' => [
'B',
'pbkdf2',
],
],
'bcrypt' => [
- 'class' => 'BcryptPassword',
+ 'class' => BcryptPassword::class,
'cost' => 9,
],
'pbkdf2' => [
- 'class' => 'Pbkdf2Password',
+ 'class' => Pbkdf2Password::class,
'algo' => 'sha512',
'cost' => '30000',
'length' => '64',
$wgGroupPermissions['*']['createpage'] = true;
$wgGroupPermissions['*']['createtalk'] = true;
$wgGroupPermissions['*']['writeapi'] = true;
-$wgGroupPermissions['*']['editmyusercss'] = true;
-$wgGroupPermissions['*']['editmyuserjs'] = true;
$wgGroupPermissions['*']['viewmywatchlist'] = true;
$wgGroupPermissions['*']['editmywatchlist'] = true;
$wgGroupPermissions['*']['viewmyprivateinfo'] = true;
$wgGroupPermissions['user']['reupload'] = true;
$wgGroupPermissions['user']['reupload-shared'] = true;
$wgGroupPermissions['user']['minoredit'] = true;
+$wgGroupPermissions['user']['editmyusercss'] = true;
+$wgGroupPermissions['user']['editmyuserjson'] = true;
+$wgGroupPermissions['user']['editmyuserjs'] = true;
$wgGroupPermissions['user']['purge'] = true;
$wgGroupPermissions['user']['sendemail'] = true;
$wgGroupPermissions['user']['applychangetags'] = true;
$wgGroupPermissions['user']['changetags'] = true;
$wgGroupPermissions['user']['editcontentmodel'] = true;
-$wgGroupPermissions['user']['sendemail-new-users'] = true;
// Implicit group for accounts that pass $wgAutoConfirmAge
$wgGroupPermissions['autoconfirmed']['autoconfirmed'] = true;
$wgGroupPermissions['sysop']['undelete'] = true;
$wgGroupPermissions['sysop']['editinterface'] = true;
$wgGroupPermissions['sysop']['editusercss'] = true;
+$wgGroupPermissions['sysop']['edituserjson'] = true;
$wgGroupPermissions['sysop']['edituserjs'] = true;
$wgGroupPermissions['sysop']['import'] = true;
$wgGroupPermissions['sysop']['importupload'] = true;
'edit' => [
'ip' => [ 8, 60 ],
'newbie' => [ 8, 60 ],
+ 'user' => [ 90, 60 ],
],
// Page moves
'move' => [
'newbie' => [ 5, 86400 ],
'user' => [ 20, 86400 ],
],
+ 'changeemail' => [
+ 'ip-all' => [ 10, 3600 ],
+ 'user' => [ 4, 86400 ]
+ ],
// Purging pages
'purge' => [
'ip' => [ 30, 60 ],
$wgGrantPermissions['editprotected'] = $wgGrantPermissions['editpage'];
$wgGrantPermissions['editprotected']['editprotected'] = true;
+// FIXME: Rename editmycssjs to editmyconfig
$wgGrantPermissions['editmycssjs'] = $wgGrantPermissions['editpage'];
$wgGrantPermissions['editmycssjs']['editmyusercss'] = true;
+$wgGrantPermissions['editmycssjs']['editmyuserjson'] = true;
$wgGrantPermissions['editmycssjs']['editmyuserjs'] = true;
$wgGrantPermissions['editmyoptions']['editmyoptions'] = true;
$wgGrantPermissions['editinterface'] = $wgGrantPermissions['editpage'];
$wgGrantPermissions['editinterface']['editinterface'] = true;
$wgGrantPermissions['editinterface']['editusercss'] = true;
+$wgGrantPermissions['editinterface']['edituserjson'] = true;
$wgGrantPermissions['editinterface']['edituserjs'] = true;
$wgGrantPermissions['createeditmovepage'] = $wgGrantPermissions['editpage'];
* Write SQL queries to the debug log.
*
* This setting is only used $wgLBFactoryConf['class'] is set to
- * 'LBFactorySimple' and $wgDBservers is an empty array; otherwise
+ * '\Wikimedia\Rdbms\LBFactorySimple' and $wgDBservers is an empty array; otherwise
* the DBO_DEBUG flag must be set in the 'flags' option of the database
* connection to achieve the same functionality.
*/
*
* @par To completely disable logging:
* @code
- * $wgMWLoggerDefaultSpi = [ 'class' => '\\MediaWiki\\Logger\\NullSpi' ];
+ * $wgMWLoggerDefaultSpi = [ 'class' => \MediaWiki\Logger\NullSpi::class ];
* @endcode
*
* @since 1.25
* @see MwLogger
*/
$wgMWLoggerDefaultSpi = [
- 'class' => '\\MediaWiki\\Logger\\LegacySpi',
+ 'class' => \MediaWiki\Logger\LegacySpi::class,
];
/**
*/
$wgLogExceptionBacktrace = true;
+/**
+ * If true, the MediaWiki error handler passes errors/warnings to the default error handler
+ * after logging them. The setting is ignored when the track_errors php.ini flag is true.
+ */
+$wgPropagateErrors = true;
+
/**
* Expose backend server host names through the API and various HTML comments
*/
*/
$wgGitRepositoryViewers = [
'https://(?:[a-z0-9_]+@)?gerrit.wikimedia.org/r/(?:p/)?(.*)' =>
- 'https://phabricator.wikimedia.org/r/revision/%R;%H',
+ 'https://gerrit.wikimedia.org/g/%R/+/%H',
'ssh://(?:[a-z0-9_]+@)?gerrit.wikimedia.org:29418/(.*)' =>
- 'https://phabricator.wikimedia.org/r/revision/%R;%H',
+ 'https://gerrit.wikimedia.org/g/%R/+/%H',
];
/** @} */ # End of maintenance }
* 'omit_bots' => true,
* ];
* @example $wgRCFeeds['example'] = [
- * 'class' => 'ExampleRCFeed',
+ * 'class' => ExampleRCFeed::class,
* ];
* @since 1.22
*/
* @since 1.22
*/
$wgRCEngines = [
- 'redis' => 'RedisPubSubFeedEngine',
- 'udp' => 'UDPRCFeedEngine',
+ 'redis' => RedisPubSubFeedEngine::class,
+ 'udp' => UDPRCFeedEngine::class,
];
/**
*/
$wgUseFilePatrol = true;
-/**
- * Log autopatrol actions to the log table
- */
-$wgLogAutopatrol = true;
-
/**
* Provide syndication feeds (RSS, Atom) for, e.g., Recentchanges, Newpages
*/
* $wgOut->isSyndicated() is true.
*/
$wgFeedClasses = [
- 'rss' => 'RSSFeed',
- 'atom' => 'AtomFeed',
+ 'rss' => RSSFeed::class,
+ 'atom' => AtomFeed::class,
];
/**
*/
$wgDisableAnonTalk = false;
-/**
- * Enable filtering of categories in Recentchanges
- */
-$wgAllowCategorizedRecentChanges = false;
-
/**
* Allow filtering by change tag in recentchanges, history, etc
* Has no effect if no tags are defined in valid_tag.
* 'version' => '1.9.0',
* 'url' => 'https://example.org/example-extension/',
* 'descriptionmsg' => 'exampleextension-desc',
- * 'license-name' => 'GPL-2.0+',
+ * 'license-name' => 'GPL-2.0-or-later',
* ];
* @endcode
*
* localizable message (omit in favour of 'descriptionmsg').
*
* - license-name: Short name of the license (used as label for the link), such
- * as "GPL-2.0+" or "MIT" (https://spdx.org/licenses/ for a list of identifiers).
+ * as "GPL-2.0-or-later" or "MIT" (https://spdx.org/licenses/ for a list of identifiers).
*/
$wgExtensionCredits = [];
* or (since 1.30) a callback to use for creating the job object.
*/
$wgJobClasses = [
- 'refreshLinks' => 'RefreshLinksJob',
- 'deleteLinks' => 'DeleteLinksJob',
- 'htmlCacheUpdate' => 'HTMLCacheUpdateJob',
- 'sendMail' => 'EmaillingJob',
- 'enotifNotify' => 'EnotifNotifyJob',
- 'fixDoubleRedirect' => 'DoubleRedirectJob',
- 'AssembleUploadChunks' => 'AssembleUploadChunksJob',
- 'PublishStashedFile' => 'PublishStashedFileJob',
- 'ThumbnailRender' => 'ThumbnailRenderJob',
- 'recentChangesUpdate' => 'RecentChangesUpdateJob',
- 'refreshLinksPrioritized' => 'RefreshLinksJob',
- 'refreshLinksDynamic' => 'RefreshLinksJob',
- 'activityUpdateJob' => 'ActivityUpdateJob',
- 'categoryMembershipChange' => 'CategoryMembershipChangeJob',
- 'clearUserWatchlist' => 'ClearUserWatchlistJob',
- 'cdnPurge' => 'CdnPurgeJob',
- 'enqueue' => 'EnqueueJob', // local queue for multi-DC setups
- 'null' => 'NullJob'
+ 'refreshLinks' => RefreshLinksJob::class,
+ 'deleteLinks' => DeleteLinksJob::class,
+ 'htmlCacheUpdate' => HTMLCacheUpdateJob::class,
+ 'sendMail' => EmaillingJob::class,
+ 'enotifNotify' => EnotifNotifyJob::class,
+ 'fixDoubleRedirect' => DoubleRedirectJob::class,
+ 'AssembleUploadChunks' => AssembleUploadChunksJob::class,
+ 'PublishStashedFile' => PublishStashedFileJob::class,
+ 'ThumbnailRender' => ThumbnailRenderJob::class,
+ 'recentChangesUpdate' => RecentChangesUpdateJob::class,
+ 'refreshLinksPrioritized' => RefreshLinksJob::class,
+ 'refreshLinksDynamic' => RefreshLinksJob::class,
+ 'activityUpdateJob' => ActivityUpdateJob::class,
+ 'categoryMembershipChange' => CategoryMembershipChangeJob::class,
+ 'clearUserWatchlist' => ClearUserWatchlistJob::class,
+ 'cdnPurge' => CdnPurgeJob::class,
+ 'userGroupExpiry' => UserGroupExpiryJob::class,
+ 'clearWatchlistNotifications' => ClearWatchlistNotificationsJob::class,
+ 'enqueue' => EnqueueJob::class, // local queue for multi-DC setups
+ 'null' => NullJob::class,
];
/**
* These settings should be global to all wikis.
*/
$wgJobTypeConf = [
- 'default' => [ 'class' => 'JobQueueDB', 'order' => 'random', 'claimTTL' => 3600 ],
+ 'default' => [ 'class' => JobQueueDB::class, 'order' => 'random', 'claimTTL' => 3600 ],
];
/**
* These settings should be global to all wikis.
*/
$wgJobQueueAggregator = [
- 'class' => 'JobQueueAggregatorNull'
+ 'class' => JobQueueAggregatorNull::class
];
/**
* Expensive Querypages are already updated.
*/
$wgSpecialPageCacheUpdates = [
- 'Statistics' => [ 'SiteStatsUpdate', 'cacheUpdate' ]
+ 'Statistics' => [ SiteStatsUpdate::class, 'cacheUpdate' ]
];
/**
* @see LogFormatter
*/
$wgLogActionsHandlers = [
- 'block/block' => 'BlockLogFormatter',
- 'block/reblock' => 'BlockLogFormatter',
- 'block/unblock' => 'BlockLogFormatter',
- 'contentmodel/change' => 'ContentModelLogFormatter',
- 'contentmodel/new' => 'ContentModelLogFormatter',
- 'delete/delete' => 'DeleteLogFormatter',
- 'delete/delete_redir' => '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',
- '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',
+ 'block/block' => BlockLogFormatter::class,
+ 'block/reblock' => BlockLogFormatter::class,
+ 'block/unblock' => BlockLogFormatter::class,
+ 'contentmodel/change' => ContentModelLogFormatter::class,
+ 'contentmodel/new' => ContentModelLogFormatter::class,
+ 'delete/delete' => DeleteLogFormatter::class,
+ 'delete/delete_redir' => DeleteLogFormatter::class,
+ 'delete/event' => DeleteLogFormatter::class,
+ 'delete/restore' => DeleteLogFormatter::class,
+ 'delete/revision' => DeleteLogFormatter::class,
+ 'import/interwiki' => ImportLogFormatter::class,
+ 'import/upload' => ImportLogFormatter::class,
+ 'managetags/activate' => LogFormatter::class,
+ 'managetags/create' => LogFormatter::class,
+ 'managetags/deactivate' => LogFormatter::class,
+ 'managetags/delete' => LogFormatter::class,
+ 'merge/merge' => MergeLogFormatter::class,
+ 'move/move' => MoveLogFormatter::class,
+ 'move/move_redir' => MoveLogFormatter::class,
+ 'patrol/patrol' => PatrolLogFormatter::class,
+ 'patrol/autopatrol' => PatrolLogFormatter::class,
+ 'protect/modify' => ProtectLogFormatter::class,
+ 'protect/move_prot' => ProtectLogFormatter::class,
+ 'protect/protect' => ProtectLogFormatter::class,
+ 'protect/unprotect' => ProtectLogFormatter::class,
+ 'rights/autopromote' => RightsLogFormatter::class,
+ 'rights/rights' => RightsLogFormatter::class,
+ 'suppress/block' => BlockLogFormatter::class,
+ 'suppress/delete' => DeleteLogFormatter::class,
+ 'suppress/event' => DeleteLogFormatter::class,
+ 'suppress/reblock' => BlockLogFormatter::class,
+ 'suppress/revision' => DeleteLogFormatter::class,
+ 'tag/update' => TagLogFormatter::class,
+ 'upload/overwrite' => UploadLogFormatter::class,
+ 'upload/revert' => UploadLogFormatter::class,
+ 'upload/upload' => UploadLogFormatter::class,
];
/**
'credits' => true,
'delete' => true,
'edit' => true,
- 'editchangetags' => 'SpecialPageAction',
+ 'editchangetags' => SpecialPageAction::class,
'history' => true,
'info' => true,
'markpatrolled' => true,
'raw' => true,
'render' => true,
'revert' => true,
- 'revisiondelete' => 'SpecialPageAction',
+ 'revisiondelete' => SpecialPageAction::class,
'rollback' => true,
'submit' => true,
'unprotect' => true,
* @code
* $wgAPIModules['foo'] = 'ApiFoo';
* $wgAPIModules['bar'] = [
- * 'class' => 'ApiBar',
+ * 'class' => ApiBar::class,
* 'factory' => function( $main, $name ) { ... }
* ];
* $wgAPIModules['xyzzy'] = [
- * 'class' => 'ApiXyzzy',
- * 'factory' => [ 'XyzzyFactory', 'newApiModule' ]
+ * 'class' => ApiXyzzy::class,
+ * 'factory' => [ XyzzyFactory::class, 'newApiModule' ]
* ];
* @endcode
*
/**
* Enable AJAX framework
+ *
+ * @deprecated (officially) since MediaWiki 1.31
*/
$wgUseAjax = true;
$wgShellCgroup = false;
/**
- * Executable path of the PHP cli binary (php/php5). Should be set up on install.
+ * Executable path of the PHP cli binary. Should be set up on install.
*/
$wgPhpCli = '/usr/bin/php';
* @par Example using local redis instance:
* @code
* $wgPoolCounterConf = [ 'ArticleView' => [
- * 'class' => 'PoolCounterRedis',
+ * 'class' => PoolCounterRedis::class,
* 'timeout' => 15, // wait timeout in seconds
* 'workers' => 1, // maximum number of active threads in each pool
* 'maxqueue' => 5, // maximum number of total threads in each pool
* @par Example using C daemon from https://www.mediawiki.org/wiki/Extension:PoolCounter:
* @code
* $wgPoolCounterConf = [ 'ArticleView' => [
- * 'class' => 'PoolCounter_Client',
+ * 'class' => PoolCounter_Client::class,
* 'timeout' => 15, // wait timeout in seconds
* 'workers' => 5, // maximum number of active threads in each pool
* 'maxqueue' => 50, // maximum number of total threads in each pool
* @since 1.20
*/
$wgSiteTypes = [
- 'mediawiki' => 'MediaWikiSite',
+ 'mediawiki' => MediaWikiSite::class,
];
/**
* Auto-mounting example for Parsoid:
*
* $wgVirtualRestConfig['paths']['/parsoid/'] = [
- * 'class' => 'ParsoidVirtualRESTService',
+ * 'class' => ParsoidVirtualRESTService::class,
* 'options' => [
* 'url' => 'http://localhost:8000',
* 'prefix' => 'enwiki',
*/
$wgEventRelayerConfig = [
'default' => [
- 'class' => 'EventRelayerNull',
+ 'class' => EventRelayerNull::class,
]
];
*/
$wgCommentTableSchemaMigrationStage = MIGRATION_OLD;
+/**
+ * Actor table schema migration stage.
+ * @since 1.31
+ * @var int One of the MIGRATION_* constants
+ */
+$wgActorTableSchemaMigrationStage = MIGRATION_OLD;
+
/**
* For really cool vim folding this needs to be at the end:
* vim: foldmarker=@{,@} foldmethod=marker