Add MediaWiki\Registration namespace to registration classes

Bug: T353458
Change-Id: Ifa3b6a6e0353bb4ce21a3f4456f1fc696c8d377c
This commit is contained in:
Ebrahim Byagowi 2024-08-10 08:47:59 +03:30 committed by Ebrahim
parent e340634274
commit 697e19e461
68 changed files with 191 additions and 38 deletions

View file

@ -393,6 +393,15 @@ because of Phabricator reports.
- XMLRCFeedFormatter
- MediaWiki\RenameUser:
- RenameUserJob
- MediaWiki\Registration:
- ExtensionDependencyError
- ExtensionJsonValidationError
- ExtensionJsonValidator
- ExtensionProcessor
- ExtensionRegistry
- MissingExtensionException
- Processor
- VersionChecker
- MediaWiki\RevisionList:
- RevisionItem
- RevisionItemBase

View file

@ -1938,6 +1938,14 @@ $wgAutoloadLocalClasses = [
'MediaWiki\\RCFeed\\RedisPubSubFeedEngine' => __DIR__ . '/includes/rcfeed/RedisPubSubFeedEngine.php',
'MediaWiki\\RCFeed\\UDPRCFeedEngine' => __DIR__ . '/includes/rcfeed/UDPRCFeedEngine.php',
'MediaWiki\\RCFeed\\XMLRCFeedFormatter' => __DIR__ . '/includes/rcfeed/XMLRCFeedFormatter.php',
'MediaWiki\\Registration\\ExtensionDependencyError' => __DIR__ . '/includes/registration/ExtensionDependencyError.php',
'MediaWiki\\Registration\\ExtensionJsonValidationError' => __DIR__ . '/includes/registration/ExtensionJsonValidationError.php',
'MediaWiki\\Registration\\ExtensionJsonValidator' => __DIR__ . '/includes/registration/ExtensionJsonValidator.php',
'MediaWiki\\Registration\\ExtensionProcessor' => __DIR__ . '/includes/registration/ExtensionProcessor.php',
'MediaWiki\\Registration\\ExtensionRegistry' => __DIR__ . '/includes/registration/ExtensionRegistry.php',
'MediaWiki\\Registration\\MissingExtensionException' => __DIR__ . '/includes/registration/MissingExtensionException.php',
'MediaWiki\\Registration\\Processor' => __DIR__ . '/includes/registration/Processor.php',
'MediaWiki\\Registration\\VersionChecker' => __DIR__ . '/includes/registration/VersionChecker.php',
'MediaWiki\\RenameUser\\Hook\\RenameUserAbortHook' => __DIR__ . '/includes/RenameUser/Hook/RenameUserAbortHook.php',
'MediaWiki\\RenameUser\\Hook\\RenameUserCompleteHook' => __DIR__ . '/includes/RenameUser/Hook/RenameUserCompleteHook.php',
'MediaWiki\\RenameUser\\Hook\\RenameUserPreRenameHook' => __DIR__ . '/includes/RenameUser/Hook/RenameUserPreRenameHook.php',

View file

@ -21,13 +21,13 @@
namespace MediaWiki\Category;
use ExtensionRegistry;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\PageReference;
use MediaWiki\Parser\Parser;
use MediaWiki\Parser\ParserOutput;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Title\NamespaceInfo;
use MediaWiki\Title\Title;
use MediaWiki\Title\TitleParser;

View file

@ -27,6 +27,7 @@ use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MediaWikiServices;
use MediaWiki\Message\Message;
use MediaWiki\ProcOpenError;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\WebRequest;
use MediaWiki\Shell\Shell;
use MediaWiki\StubObject\StubUserLang;

View file

@ -22,7 +22,6 @@ namespace MediaWiki;
use CryptHKDF;
use DateFormatterFactory;
use ExtensionRegistry;
use ExternalStoreAccess;
use ExternalStoreFactory;
use IBufferingStatsdDataFactory;
@ -132,6 +131,7 @@ use MediaWiki\Permissions\RestrictionStore;
use MediaWiki\PoolCounter\PoolCounterFactory;
use MediaWiki\Preferences\PreferencesFactory;
use MediaWiki\Preferences\SignatureValidatorFactory;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\ProxyLookup;
use MediaWiki\ResourceLoader\ResourceLoader;
use MediaWiki\Rest\Handler\Helper\PageRestHelperFactory;

View file

@ -26,7 +26,6 @@ use Article;
use Content;
use CSSJanus;
use Exception;
use ExtensionRegistry;
use File;
use HtmlArmor;
use InvalidArgumentException;
@ -54,6 +53,7 @@ use MediaWiki\Parser\ParserOutput;
use MediaWiki\Parser\ParserOutputFlags;
use MediaWiki\Parser\Sanitizer;
use MediaWiki\Permissions\PermissionStatus;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\ContentSecurityPolicy;
use MediaWiki\Request\FauxRequest;
use MediaWiki\Request\WebRequest;

View file

@ -20,12 +20,12 @@
namespace MediaWiki\ResourceLoader;
use ExtensionRegistry;
use InvalidArgumentException;
use MediaWiki\Config\Config;
use MediaWiki\Html\Html;
use MediaWiki\Html\HtmlJsCode;
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionRegistry;
/**
* Module for codex that has direction-specific style files and a static helper

View file

@ -24,7 +24,6 @@ namespace MediaWiki\ResourceLoader;
use CSSJanus;
use Exception;
use ExtensionRegistry;
use FileContentsHasher;
use InvalidArgumentException;
use LogicException;
@ -32,6 +31,7 @@ use MediaWiki\Languages\LanguageFallback;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Output\OutputPage;
use MediaWiki\Registration\ExtensionRegistry;
use RuntimeException;
use Wikimedia\Minify\CSSMin;
use Wikimedia\RequestTimeout\TimeoutException;

View file

@ -20,8 +20,8 @@
namespace MediaWiki\ResourceLoader;
use ExtensionRegistry;
use InvalidArgumentException;
use MediaWiki\Registration\ExtensionRegistry;
/**
* Convenience methods for dealing with OOUI themes and their relations to MW skins.

View file

@ -23,7 +23,6 @@
namespace MediaWiki\ResourceLoader;
use Exception;
use ExtensionRegistry;
use HttpStatus;
use InvalidArgumentException;
use Less_Environment;
@ -39,6 +38,7 @@ use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Output\OutputPage;
use MediaWiki\Profiler\ProfilingContext;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\HeaderCallback;
use MediaWiki\Request\WebRequest;
use MediaWiki\Title\Title;

View file

@ -2,7 +2,6 @@
namespace MediaWiki\Rest;
use ExtensionRegistry;
use MediaWiki\Config\Config;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Context\IContextSource;
@ -11,6 +10,7 @@ use MediaWiki\EntryPointEnvironment;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiEntryPoint;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Rest\BasicAccess\CompoundAuthorizer;
use MediaWiki\Rest\BasicAccess\MWBasicAuthorizer;
use MediaWiki\Rest\Reporter\MWErrorReporter;

View file

@ -20,7 +20,6 @@
namespace MediaWiki\Rest\Handler;
use Composer\Semver\Semver;
use ExtensionRegistry;
use InvalidArgumentException;
use LanguageCode;
use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
@ -32,6 +31,7 @@ use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageIdentity;
use MediaWiki\Page\ProperPageIdentity;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Rest\Handler;
use MediaWiki\Rest\Handler\Helper\HtmlInputTransformHelper;
use MediaWiki\Rest\Handler\Helper\HtmlOutputRendererHelper;

View file

@ -169,6 +169,7 @@ use MediaWiki\Preferences\DefaultPreferencesFactory;
use MediaWiki\Preferences\PreferencesFactory;
use MediaWiki\Preferences\SignatureValidator;
use MediaWiki\Preferences\SignatureValidatorFactory;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\ProxyLookup;
use MediaWiki\Request\WebRequest;
use MediaWiki\ResourceLoader\MessageBlobStore;

View file

@ -2,12 +2,12 @@
namespace MediaWiki\Settings;
use ExtensionRegistry;
use MediaWiki\Config\Config;
use MediaWiki\Config\HashConfig;
use MediaWiki\Config\IterableConfig;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Cache\CacheableSource;
use MediaWiki\Settings\Cache\CachedSource;
use MediaWiki\Settings\Config\ConfigBuilder;

View file

@ -62,6 +62,8 @@ use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\MediaWikiServices;
use MediaWiki\Message\Message;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Registration\MissingExtensionException;
use MediaWiki\Request\HeaderCallback;
use MediaWiki\Settings\DynamicDefaultValues;
use MediaWiki\Settings\LocalSettingsLoader;

View file

@ -35,6 +35,7 @@ use MediaWiki\ParamValidator\TypeDef\NamespaceDef;
use MediaWiki\Permissions\Authority;
use MediaWiki\Permissions\PermissionManager;
use MediaWiki\Permissions\PermissionStatus;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Specials\SpecialVersion;
use MediaWiki\Status\Status;
use MediaWiki\Title\Title;

View file

@ -27,6 +27,7 @@ use MediaWiki\Languages\LanguageNameUtils;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Parser\MagicWordFactory;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\ResourceLoader\SkinModule;
use MediaWiki\SiteStats\SiteStats;
use MediaWiki\SpecialPage\SpecialPage;

View file

@ -27,7 +27,6 @@ use AddRFCandPMIDInterwiki;
use AutoLoader;
use CleanupEmptyCategories;
use DeleteDefaultMessages;
use ExtensionRegistry;
use FakeMaintenance;
use FixDefaultJsonContentPages;
use LogicException;
@ -37,6 +36,7 @@ use MediaWiki\HookContainer\HookRunner;
use MediaWiki\HookContainer\StaticHookRegistry;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\ResourceLoader\MessageBlobStore;
use MediaWiki\SiteStats\SiteStatsInit;
use MigrateLinksTable;

View file

@ -29,9 +29,6 @@ namespace MediaWiki\Installer;
use AutoLoader;
use Exception;
use ExecutableFinder;
use ExtensionDependencyError;
use ExtensionProcessor;
use ExtensionRegistry;
use GuzzleHttp\Psr7\Header;
use IntlChar;
use InvalidArgumentException;
@ -51,6 +48,9 @@ use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\MediaWikiServices;
use MediaWiki\Parser\Parser;
use MediaWiki\Registration\ExtensionDependencyError;
use MediaWiki\Registration\ExtensionProcessor;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\SettingsBuilder;
use MediaWiki\Status\Status;
use MediaWiki\StubObject\StubGlobalUser;

View file

@ -3,10 +3,10 @@
namespace MediaWiki\Parser\Parsoid;
use ExtensionRegistry;
use MediaWiki\Config\Config;
use MediaWiki\Content\WikitextContent;
use MediaWiki\Parser\Parsoid\Config\PageConfigFactory;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Revision\MutableRevisionRecord;
use MediaWiki\Revision\SlotRecord;
use MediaWiki\Title\TitleFactory;

View file

@ -17,6 +17,10 @@
* @file
*/
namespace MediaWiki\Registration;
use Exception;
/**
* @newable
* @since 1.31
@ -105,3 +109,6 @@ class ExtensionDependencyError extends Exception {
}
}
/** @deprecated class alias since 1.43 */
class_alias( ExtensionDependencyError::class, 'ExtensionDependencyError' );

View file

@ -18,9 +18,16 @@
* @file
*/
namespace MediaWiki\Registration;
use Exception;
/**
* @newable
* @ingroup ExtensionRegistry
*/
class ExtensionJsonValidationError extends Exception {
}
/** @deprecated class alias since 1.43 */
class_alias( ExtensionJsonValidationError::class, 'ExtensionJsonValidationError' );

View file

@ -18,6 +18,8 @@
* @file
*/
namespace MediaWiki\Registration;
use Composer\Spdx\SpdxLicenses;
use JsonSchema\Validator;
use Seld\JsonLint\DuplicateKeyException;
@ -59,6 +61,7 @@ class ExtensionJsonValidator {
call_user_func( $this->missingDepCallback,
'The JsonSchema library cannot be found, please install it through composer.'
);
return false;
}
@ -66,6 +69,7 @@ class ExtensionJsonValidator {
call_user_func( $this->missingDepCallback,
'The spdx-licenses library cannot be found, please install it through composer.'
);
return false;
}
@ -80,6 +84,7 @@ class ExtensionJsonValidator {
/**
* @param string $path file to validate
*
* @return bool true if passes validation
* @throws ExtensionJsonValidationError on any failure
*/
@ -157,3 +162,6 @@ class ExtensionJsonValidator {
throw new ExtensionJsonValidationError( $out );
}
}
/** @deprecated class alias since 1.43 */
class_alias( ExtensionJsonValidator::class, 'ExtensionJsonValidator' );

View file

@ -1,7 +1,13 @@
<?php
namespace MediaWiki\Registration;
use Exception;
use InvalidArgumentException;
use MediaWiki\MainConfigNames;
use MediaWiki\ResourceLoader\FilePath;
use RuntimeException;
use UnexpectedValueException;
/**
* Load extension manifests and then aggregate their contents.
@ -376,6 +382,7 @@ class ExtensionProcessor implements Processor {
}
$autoload = $this->getExtractedAutoloadInfo( $includeDev );
return [
'globals' => $this->globals,
'defines' => $this->defines,
@ -456,6 +463,7 @@ class ExtensionProcessor implements Processor {
);
}
}
return $merged;
}
@ -468,6 +476,7 @@ class ExtensionProcessor implements Processor {
* @param array $hookHandlersAttr handler definitions from 'HookHandler' attribute
* @param string $name
* @param string $path extension.json file path
*
* @throws UnexpectedValueException
*/
private function setArrayHookHandler(
@ -779,6 +788,7 @@ class ExtensionProcessor implements Processor {
/**
* @param string $path
* @param array $info
*
* @return string Name of thing
* @throws Exception
*/
@ -821,6 +831,7 @@ class ExtensionProcessor implements Processor {
/**
* Set configuration settings for manifest_version == 1
*
* @todo In the future, this should be done via Config interfaces
*
* @param array $info
@ -855,11 +866,13 @@ class ExtensionProcessor implements Processor {
foreach ( $value as $k => $v ) {
$result[$k] = $dir . '/' . $v;
}
return $result;
}
/**
* Set configuration settings for manifest_version == 2
*
* @todo In the future, this should be done via Config interfaces
*
* @param array $info
@ -930,6 +943,7 @@ class ExtensionProcessor implements Processor {
* @param string $name
* @param array $value
* @param array &$array
*
* @throws InvalidArgumentException
*/
protected function storeToArrayRecursive( $path, $name, $value, &$array ) {
@ -950,6 +964,7 @@ class ExtensionProcessor implements Processor {
* @param string $name
* @param array $value
* @param array &$array
*
* @throws InvalidArgumentException
*/
protected function storeToArray( $path, $name, $value, &$array ) {
@ -1033,3 +1048,6 @@ class ExtensionProcessor implements Processor {
}
}
}
/** @deprecated class alias since 1.43 */
class_alias( ExtensionProcessor::class, 'ExtensionProcessor' );

View file

@ -1,10 +1,18 @@
<?php
namespace MediaWiki\Registration;
use AutoLoader;
use Composer\Semver\Semver;
use InvalidArgumentException;
use LogicException;
use MediaWiki\Settings\SettingsBuilder;
use MediaWiki\Shell\Shell;
use MediaWiki\ShellDisabledError;
use MediaWiki\WikiMap\WikiMap;
use ObjectCacheFactory;
use RuntimeException;
use UnexpectedValueException;
use Wikimedia\ObjectCache\BagOStuff;
use Wikimedia\ScopedCallback;
@ -205,6 +213,7 @@ class ExtensionRegistry {
/**
* @since 1.34
*
* @param bool $check
*/
public function setCheckDevRequires( $check ) {
@ -217,6 +226,7 @@ class ExtensionRegistry {
* TestAutoloadNamespaces should be added to the autoloader.
*
* @since 1.35
*
* @param bool $load
*/
public function setLoadTestClassesAndNamespaces( $load ) {
@ -254,6 +264,7 @@ class ExtensionRegistry {
$keyspace = ( is_string( $wgCachePrefix ) && $wgCachePrefix !== '' )
? $wgCachePrefix
: WikiMap::getCurrentWikiDbDomain()->getId();
return ObjectCacheFactory::makeLocalServerCache( $keyspace );
}
@ -287,6 +298,7 @@ class ExtensionRegistry {
];
$this->varyHash = md5( json_encode( $vary ) );
}
return $this->varyHash;
}
@ -382,6 +394,7 @@ class ExtensionRegistry {
/**
* Get the list of abilities and their values
*
* @return bool[]
*/
private function getAbilities() {
@ -417,6 +430,7 @@ class ExtensionRegistry {
* @internal since 1.39. Extensions should use ExtensionProcessor instead.
*
* @param int[] $queue keys are filenames, values are ignored
*
* @return array extracted info
* @throws InvalidArgumentException
* @throws ExtensionDependencyError
@ -576,8 +590,10 @@ class ExtensionRegistry {
/**
* Whether a thing has been loaded
*
* @param string $name
* @param string $constraint The required version constraint for this dependency
*
* @throws LogicException if a specific constraint is asked for,
* but the extension isn't versioned
* @return bool
@ -599,6 +615,7 @@ class ExtensionRegistry {
/**
* @param string $name
*
* @return array
*/
public function getAttribute( $name ) {
@ -616,7 +633,9 @@ class ExtensionRegistry {
/**
* Get an attribute value that isn't cached by reading each
* extension.json file again
*
* @param string $name
*
* @return array
*/
protected function getLazyLoadedAttribute( $name ) {
@ -633,6 +652,7 @@ class ExtensionRegistry {
$data = $cache->get( $key );
if ( $data !== false ) {
$this->lazyAttributes[$name] = $data;
return $data;
}
@ -656,6 +676,7 @@ class ExtensionRegistry {
*
* @param string $name Name of attribute to override
* @param array $value Value to set
*
* @return ScopedCallback to reset
* @since 1.33
*/
@ -669,6 +690,7 @@ class ExtensionRegistry {
throw new InvalidArgumentException( "The attribute '$name' has already been overridden" );
}
$this->testAttributes[$name] = $value;
return new ScopedCallback( function () use ( $name ) {
unset( $this->testAttributes[$name] );
} );
@ -688,6 +710,7 @@ class ExtensionRegistry {
*
* @param string $dir
* @param string[] $files
*
* @return array
*/
protected static function processAutoLoader( $dir, array $files ) {
@ -695,11 +718,13 @@ class ExtensionRegistry {
foreach ( $files as &$file ) {
$file = "$dir/$file";
}
return $files;
}
/**
* @internal for use by Setup. Hopefully in the future, we find a better way.
*
* @param SettingsBuilder $settingsBuilder
*/
public function setSettingsBuilder( SettingsBuilder $settingsBuilder ) {
@ -710,6 +735,10 @@ class ExtensionRegistry {
if ( $this->settingsBuilder === null ) {
$this->settingsBuilder = SettingsBuilder::getInstance();
}
return $this->settingsBuilder;
}
}
/** @deprecated class alias since 1.43 */
class_alias( ExtensionRegistry::class, 'ExtensionRegistry' );

View file

@ -1,4 +1,9 @@
<?php
namespace MediaWiki\Registration;
use Exception;
use HttpStatus;
use MediaWiki\Html\TemplateParser;
use Wikimedia\ObjectCache\EmptyBagOStuff;
@ -121,3 +126,6 @@ class MissingExtensionException extends Exception {
return $path . $suffix;
}
}
/** @deprecated class alias since 1.43 */
class_alias( MissingExtensionException::class, 'MissingExtensionException' );

View file

@ -1,5 +1,7 @@
<?php
namespace MediaWiki\Registration;
/**
* Generic processor that reads associated arrays and registers whatever is required.
*
@ -34,8 +36,10 @@ interface Processor {
* Get the requirements for the provided info
*
* @since 1.26
*
* @param array $info
* @param bool $includeDev
*
* @return array Where keys are the name to have a constraint on,
* like 'MediaWiki'. Values are a constraint string like "1.26.1".
*/
@ -57,3 +61,6 @@ interface Processor {
*/
public function getExtractedAutoloadInfo( bool $includeDev = false ): array;
}
/** @deprecated class alias since 1.43 */
class_alias( Processor::class, 'Processor' );

View file

@ -18,8 +18,11 @@
* @file
*/
namespace MediaWiki\Registration;
use Composer\Semver\Constraint\Constraint;
use Composer\Semver\VersionParser;
use UnexpectedValueException;
/**
* Check whether extensions and their dependencies meet certain version requirements.
@ -88,6 +91,7 @@ class VersionChecker {
* Set an array with credits of all loaded extensions and skins.
*
* @param array $credits An array of installed extensions with credits of them
*
* @return VersionChecker $this
*/
public function setLoadedExtensionsAndSkins( array $credits ) {
@ -115,6 +119,7 @@ class VersionChecker {
/**
* @param string $phpVersion Current PHP version. Must be well-formed.
*
* @throws UnexpectedValueException
*/
private function setPhpVersion( $phpVersion ) {
@ -149,6 +154,7 @@ class VersionChecker {
* }
*
* @param array $extDependencies All extensions that depend on other ones
*
* @return array[] List of errors
*/
public function checkArray( array $extDependencies ) {
@ -268,6 +274,7 @@ class VersionChecker {
*
* @param Constraint|false $version The version installed
* @param string $constraint The required version constraint for this dependency
*
* @return bool false if no error, true else
*/
private function handleDependency( $version, $constraint ) {
@ -292,6 +299,7 @@ class VersionChecker {
* @param string $constraint The required version constraint for this dependency
* @param string $checkedExt The Extension, which depends on this dependency
* @param string $type Either 'extensions' or 'skins'
*
* @return bool|array false for no errors, or an array of info
*/
private function handleExtensionDependency( $dependencyName, $constraint, $checkedExt,
@ -352,3 +360,6 @@ class VersionChecker {
return false;
}
}
/** @deprecated class alias since 1.43 */
class_alias( VersionChecker::class, 'VersionChecker' );

View file

@ -24,6 +24,7 @@
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Parser\Sanitizer;
use MediaWiki\Registration\ExtensionRegistry;
/**
* Highlight bits of wikitext
@ -82,7 +83,7 @@ class SearchHighlighter {
// @todo FIXME: This should prolly be a hook or something
// instead of hardcoding the name of the Cite extension
if ( \ExtensionRegistry::getInstance()->isLoaded( 'Cite' ) ) {
if ( ExtensionRegistry::getInstance()->isLoaded( 'Cite' ) ) {
$spat .= '|(<ref>)'; // references via cite extension
$endPatterns[4] = '/(<ref>)|(<\/ref>)/';
}

View file

@ -23,7 +23,6 @@
namespace MediaWiki\Specials;
use Closure;
use ExtensionRegistry;
use HtmlArmor;
use Language;
use MediaWiki\Config\Config;
@ -37,6 +36,7 @@ use MediaWiki\Parser\Parser;
use MediaWiki\Parser\ParserOutput;
use MediaWiki\Parser\ParserOutputFlags;
use MediaWiki\Parser\Sanitizer;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\SpecialPage\SpecialPage;
use MediaWiki\Utils\ExtensionInfo;
use MediaWiki\Utils\GitInfo;

View file

@ -20,7 +20,6 @@
namespace MediaWiki\User\Options;
use ExtensionRegistry;
use IDBAccessObject;
use InvalidArgumentException;
use LanguageCode;
@ -32,6 +31,7 @@ use MediaWiki\HookContainer\HookRunner;
use MediaWiki\Languages\LanguageConverterFactory;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\User\UserFactory;
use MediaWiki\User\UserIdentity;
use MediaWiki\User\UserNameUtils;

View file

@ -2,10 +2,10 @@
namespace MediaWiki\User\TempUser;
use ExtensionRegistry;
use MediaWiki\Auth\AuthManager;
use MediaWiki\Auth\Throttler;
use MediaWiki\Permissions\Authority;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\WebRequest;
use MediaWiki\Session\Session;
use MediaWiki\User\CentralId\CentralIdLookup;

View file

@ -22,6 +22,7 @@
*/
use MediaWiki\MainConfigSchema;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Config\ArrayConfigBuilder;
use MediaWiki\Settings\Config\NullIniSink;
use MediaWiki\Settings\SettingsBuilder;

View file

@ -21,6 +21,8 @@
*/
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionDependencyError;
use MediaWiki\Registration\ExtensionRegistry;
require_once __DIR__ . '/Maintenance.php';

View file

@ -1,6 +1,8 @@
<?php
use MediaWiki\Json\FormatJson;
use MediaWiki\Registration\ExtensionProcessor;
use MediaWiki\Registration\ExtensionRegistry;
use Wikimedia\Composer\ComposerJson;
require_once __DIR__ . '/Maintenance.php';

View file

@ -25,6 +25,7 @@ use MediaWiki\MainConfigNames;
use MediaWiki\Maintenance\MaintenanceFatalError;
use MediaWiki\Maintenance\MaintenanceParameters;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\SettingsBuilder;
use MediaWiki\Shell\Shell;
use MediaWiki\User\User;

View file

@ -18,6 +18,7 @@
* @file
*/
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\ResourceLoader\ForeignResourceManager;
require_once __DIR__ . '/Maintenance.php';

View file

@ -24,6 +24,7 @@
# Start from scratch
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\SettingsBuilder;
define( 'MW_NO_EXTENSION_MESSAGES', 1 );

View file

@ -2,6 +2,7 @@
use Composer\Semver\VersionParser;
use MediaWiki\Json\FormatJson;
use MediaWiki\Registration\ExtensionRegistry;
require_once __DIR__ . '/Maintenance.php';

View file

@ -1,5 +1,8 @@
<?php
use MediaWiki\Registration\ExtensionJsonValidationError;
use MediaWiki\Registration\ExtensionJsonValidator;
require_once __DIR__ . '/Maintenance.php';
class ValidateRegistrationFile extends Maintenance {

View file

@ -4,6 +4,7 @@ use MediaWiki\Auth\LocalPasswordPrimaryAuthenticationProvider;
use MediaWiki\Auth\TemporaryPasswordPrimaryAuthenticationProvider;
use MediaWiki\Logger\LegacySpi;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Session\CookieSessionProvider;
/**

View file

@ -41,6 +41,7 @@ use MediaWiki\Parser\Parser;
use MediaWiki\Parser\ParserOutput;
use MediaWiki\Parser\ParserOutputFlags;
use MediaWiki\Permissions\UltimateAuthority;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Revision\MutableRevisionRecord;
use MediaWiki\Revision\RevisionRecord;
use MediaWiki\Revision\SlotRecord;

View file

@ -21,6 +21,7 @@ use MediaWiki\Page\ProperPageIdentity;
use MediaWiki\Permissions\Authority;
use MediaWiki\Permissions\UltimateAuthority;
use MediaWiki\Profiler\ProfilingContext;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\FauxRequest;
use MediaWiki\Request\WebRequest;
use MediaWiki\Revision\RevisionRecord;

View file

@ -27,6 +27,7 @@ use MediaWiki\Deferred\DeferredUpdatesScopeStack;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Logger\NullSpi;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\SettingsBuilder;
use PHPUnit\Framework\Exception;
use PHPUnit\Framework\TestCase;

View file

@ -28,6 +28,8 @@
use MediaWiki\HookContainer\HookRunner;
use MediaWiki\MainConfigSchema;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionProcessor;
use MediaWiki\Registration\ExtensionRegistry;
use PHPUnit\TextUI\CliArguments\Builder;
require_once __DIR__ . '/bootstrap.common.php';

View file

@ -18,6 +18,7 @@
use MediaWiki\HookContainer\HookRunner;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
require_once __DIR__ . '/bootstrap.common.php';

View file

@ -2,7 +2,7 @@
namespace MediaWiki\Tests\HookContainer {
use ExtensionRegistry;
use MediaWiki\Registration\ExtensionRegistry;
use Wikimedia\ScopedCallback;
class HookContainerIntegrationTest extends \MediaWikiIntegrationTestCase {

View file

@ -2,7 +2,7 @@
namespace MediaWiki\Tests\ResourceLoader;
use ExtensionRegistry;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\ResourceLoader\OOUIImageModule;
use MediaWiki\Tests\Unit\DummyServicesTrait;
use SkinFactory;

View file

@ -3,12 +3,12 @@
namespace MediaWiki\Tests\ResourceLoader;
use Exception;
use ExtensionRegistry;
use InvalidArgumentException;
use MediaWiki\Config\Config;
use MediaWiki\Config\HashConfig;
use MediaWiki\Html\HtmlJsCode;
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\FauxRequest;
use MediaWiki\ResourceLoader\Context;
use MediaWiki\ResourceLoader\FileModule;

View file

@ -2,12 +2,12 @@
namespace MediaWiki\Tests\Api\Query;
use ExtensionRegistry;
use LanguageCode;
use LanguageConverter;
use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\Message\Message;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\SiteStats\SiteStats;
use MediaWiki\Tests\Api\ApiTestCase;
use MediaWiki\Tests\User\TempUser\TempUserTestTrait;

View file

@ -9,6 +9,7 @@ use MediaWiki\Languages\LanguageFallback;
use MediaWiki\Languages\LanguageNameUtils;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Tests\Unit\DummyServicesTrait;
use MediaWiki\Title\NamespaceInfo;
use MediaWiki\User\UserIdentityValue;

View file

@ -20,6 +20,7 @@
use MediaWiki\MainConfigNames;
use MediaWiki\Parser\Parsoid\LintErrorChecker;
use MediaWiki\Registration\ExtensionRegistry;
/**
* @group Parser

View file

@ -2,6 +2,7 @@
use MediaWiki\MainConfigNames;
use MediaWiki\Preferences\SignatureValidator;
use MediaWiki\Registration\ExtensionRegistry;
use Wikimedia\TestingAccessWrapper;
/**

View file

@ -3,8 +3,8 @@
namespace MediaWiki\Tests\Registration;
use AutoLoader;
use ExtensionRegistry;
use Generator;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Config\ArrayConfigBuilder;
use MediaWiki\Settings\Config\PhpIniSink;
use MediaWiki\Settings\SettingsBuilder;
@ -13,7 +13,7 @@ use Wikimedia\ObjectCache\HashBagOStuff;
use Wikimedia\TestingAccessWrapper;
/**
* @covers \ExtensionRegistry
* @covers \MediaWiki\Registration\ExtensionRegistry
*/
class ExtensionRegistrationTest extends MediaWikiIntegrationTestCase {

View file

@ -4,7 +4,6 @@ namespace MediaWiki\Tests\Rest\Handler;
use Composer\Semver\Semver;
use Exception;
use ExtensionRegistry;
use Generator;
use Language;
use LanguageCode;
@ -18,6 +17,7 @@ use MediaWiki\Parser\Parsoid\HtmlToContentTransform;
use MediaWiki\Parser\Parsoid\HtmlTransformFactory;
use MediaWiki\Parser\RevisionOutputCache;
use MediaWiki\Permissions\UltimateAuthority;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Rest\Handler\Helper\HtmlInputTransformHelper;
use MediaWiki\Rest\Handler\Helper\ParsoidFormatHelper;
use MediaWiki\Rest\Handler\ParsoidHandler;

View file

@ -2,10 +2,10 @@
namespace MediaWiki\Tests\Integration\User\TempUser;
use ExtensionRegistry;
use MediaWiki\Auth\AuthManager;
use MediaWiki\Auth\Throttler;
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Request\FauxRequest;
use MediaWiki\Session\Session;
use MediaWiki\Tests\User\TempUser\TempUserTestTrait;

View file

@ -7,6 +7,7 @@
*/
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use PHPUnit\TextUI\Command;
class PHPUnitMaintClass {

View file

@ -16,6 +16,10 @@
* http://www.gnu.org/copyleft/gpl.html
*/
use MediaWiki\Registration\ExtensionJsonValidationError;
use MediaWiki\Registration\ExtensionJsonValidator;
use MediaWiki\Registration\ExtensionRegistry;
/**
* Validates all loaded extensions and skins using the ExtensionRegistry
* against the extension.json schema in the docs/ folder.

View file

@ -2,9 +2,9 @@
namespace MediaWiki\Tests\Structure;
use ExtensionRegistry;
use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Config\ArrayConfigBuilder;
use MediaWiki\Settings\Config\PhpIniSink;
use MediaWiki\Settings\SettingsBuilder;

View file

@ -2,6 +2,7 @@
use MediaWiki\HookContainer\HookRunner;
use MediaWiki\MediaWikiServices;
use MediaWiki\Registration\ExtensionRegistry;
use PHPUnit\Framework\TestSuite;
use SebastianBergmann\FileIterator\Facade;

View file

@ -2,7 +2,7 @@
namespace MediaWiki\Tests\Unit\Settings;
use ExtensionRegistry;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Config\ArrayConfigBuilder;
use MediaWiki\Settings\Config\PhpIniSink;
use MediaWiki\Settings\LocalSettingsLoader;

View file

@ -2,10 +2,10 @@
namespace MediaWiki\Tests\Unit\Settings;
use ExtensionRegistry;
use InvalidArgumentException;
use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Cache\CacheableSource;
use MediaWiki\Settings\Cache\CachedSource;
use MediaWiki\Settings\Config\ArrayConfigBuilder;

View file

@ -2,9 +2,9 @@
namespace MediaWiki\Tests\Unit\Settings;
use ExtensionRegistry;
use MediaWiki\Config\HashConfig;
use MediaWiki\MainConfigNames;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Config\ArrayConfigBuilder;
use MediaWiki\Settings\Config\PhpIniSink;
use MediaWiki\Settings\SettingsBuilder;

View file

@ -2,6 +2,7 @@
use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\Config\ArrayConfigBuilder;
use MediaWiki\Settings\Config\ConfigSchemaAggregator;
use MediaWiki\Settings\Config\PhpIniSink;

View file

@ -18,8 +18,11 @@
*
*/
use MediaWiki\Registration\ExtensionJsonValidationError;
use MediaWiki\Registration\ExtensionJsonValidator;
/**
* @covers \ExtensionJsonValidator
* @covers \MediaWiki\Registration\ExtensionJsonValidator
*/
class ExtensionJsonValidatorTest extends MediaWikiUnitTestCase {

View file

@ -3,17 +3,17 @@
namespace MediaWiki\Tests\Registration;
use Exception;
use ExtensionProcessor;
use ExtensionRegistry;
use InvalidArgumentException;
use MediaWiki\Json\FormatJson;
use MediaWiki\Registration\ExtensionProcessor;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWikiUnitTestCase;
use RuntimeException;
use UnexpectedValueException;
use Wikimedia\TestingAccessWrapper;
/**
* @covers \ExtensionProcessor
* @covers \MediaWiki\Registration\ExtensionProcessor
*/
class ExtensionProcessorTest extends MediaWikiUnitTestCase {

View file

@ -3,16 +3,16 @@
namespace MediaWiki\Tests\Registration;
use Exception;
use ExtensionRegistry;
use InvalidArgumentException;
use LogicException;
use MediaWiki\Registration\ExtensionRegistry;
use MediaWiki\Settings\SettingsBuilder;
use MediaWikiUnitTestCase;
use Wikimedia\ScopedCallback;
use Wikimedia\TestingAccessWrapper;
/**
* @covers \ExtensionRegistry
* @covers \MediaWiki\Registration\ExtensionRegistry
*/
class ExtensionRegistryTest extends MediaWikiUnitTestCase {

View file

@ -1,7 +1,9 @@
<?php
use MediaWiki\Registration\VersionChecker;
/**
* @covers \VersionChecker
* @covers \MediaWiki\Registration\VersionChecker
*/
class VersionCheckerTest extends MediaWikiUnitTestCase {