diff options
68 files changed, 191 insertions, 38 deletions
diff --git a/RELEASE-NOTES-1.43 b/RELEASE-NOTES-1.43 index 1414540f8815..dbabf8cad921 100644 --- a/RELEASE-NOTES-1.43 +++ b/RELEASE-NOTES-1.43 @@ -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 diff --git a/autoload.php b/autoload.php index b04fc299f11c..872fe0f807cc 100644 --- a/autoload.php +++ b/autoload.php @@ -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', diff --git a/includes/Category/TrackingCategories.php b/includes/Category/TrackingCategories.php index 83f5d933c40c..9bdc0b6371ab 100644 --- a/includes/Category/TrackingCategories.php +++ b/includes/Category/TrackingCategories.php @@ -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; diff --git a/includes/GlobalFunctions.php b/includes/GlobalFunctions.php index 39de6c1fc7d8..6b8440247471 100644 --- a/includes/GlobalFunctions.php +++ b/includes/GlobalFunctions.php @@ -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; diff --git a/includes/MediaWikiServices.php b/includes/MediaWikiServices.php index 2976551744a8..ff96203bf32e 100644 --- a/includes/MediaWikiServices.php +++ b/includes/MediaWikiServices.php @@ -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; diff --git a/includes/Output/OutputPage.php b/includes/Output/OutputPage.php index 34df87fddd3a..3e01ef76795e 100644 --- a/includes/Output/OutputPage.php +++ b/includes/Output/OutputPage.php @@ -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; diff --git a/includes/ResourceLoader/CodexModule.php b/includes/ResourceLoader/CodexModule.php index a4a936a5b5cd..2f91ca6313dd 100644 --- a/includes/ResourceLoader/CodexModule.php +++ b/includes/ResourceLoader/CodexModule.php @@ -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 diff --git a/includes/ResourceLoader/FileModule.php b/includes/ResourceLoader/FileModule.php index 0a9da8b6fe43..7f0626be20da 100644 --- a/includes/ResourceLoader/FileModule.php +++ b/includes/ResourceLoader/FileModule.php @@ -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; diff --git a/includes/ResourceLoader/OOUIModule.php b/includes/ResourceLoader/OOUIModule.php index 84363dade8b5..b073fd8afcd9 100644 --- a/includes/ResourceLoader/OOUIModule.php +++ b/includes/ResourceLoader/OOUIModule.php @@ -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. diff --git a/includes/ResourceLoader/ResourceLoader.php b/includes/ResourceLoader/ResourceLoader.php index 3cb404939aa0..db62ce14eea2 100644 --- a/includes/ResourceLoader/ResourceLoader.php +++ b/includes/ResourceLoader/ResourceLoader.php @@ -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; diff --git a/includes/Rest/EntryPoint.php b/includes/Rest/EntryPoint.php index 793272fb413d..517767640f42 100644 --- a/includes/Rest/EntryPoint.php +++ b/includes/Rest/EntryPoint.php @@ -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; diff --git a/includes/Rest/Handler/ParsoidHandler.php b/includes/Rest/Handler/ParsoidHandler.php index 8fbd03b26201..f7337b99aaf4 100644 --- a/includes/Rest/Handler/ParsoidHandler.php +++ b/includes/Rest/Handler/ParsoidHandler.php @@ -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; diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php index 4bb8bb26adab..5077d910e42a 100644 --- a/includes/ServiceWiring.php +++ b/includes/ServiceWiring.php @@ -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; diff --git a/includes/Settings/SettingsBuilder.php b/includes/Settings/SettingsBuilder.php index 70c6fbc09aec..f36b86d503eb 100644 --- a/includes/Settings/SettingsBuilder.php +++ b/includes/Settings/SettingsBuilder.php @@ -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; diff --git a/includes/Setup.php b/includes/Setup.php index cdbca8130006..71d988723397 100644 --- a/includes/Setup.php +++ b/includes/Setup.php @@ -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; diff --git a/includes/api/ApiBase.php b/includes/api/ApiBase.php index ad6991a0ac22..933b125b8829 100644 --- a/includes/api/ApiBase.php +++ b/includes/api/ApiBase.php @@ -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; diff --git a/includes/api/ApiQuerySiteinfo.php b/includes/api/ApiQuerySiteinfo.php index b864ada29c6f..5ad6be55d110 100644 --- a/includes/api/ApiQuerySiteinfo.php +++ b/includes/api/ApiQuerySiteinfo.php @@ -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; diff --git a/includes/installer/DatabaseUpdater.php b/includes/installer/DatabaseUpdater.php index 254dd4b94f21..ee2fdee9dda2 100644 --- a/includes/installer/DatabaseUpdater.php +++ b/includes/installer/DatabaseUpdater.php @@ -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; diff --git a/includes/installer/Installer.php b/includes/installer/Installer.php index 4eed2450d0ee..a58d05f5fef7 100644 --- a/includes/installer/Installer.php +++ b/includes/installer/Installer.php @@ -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; diff --git a/includes/parser/Parsoid/LintErrorChecker.php b/includes/parser/Parsoid/LintErrorChecker.php index d70bb959704b..96bb9c1f2758 100644 --- a/includes/parser/Parsoid/LintErrorChecker.php +++ b/includes/parser/Parsoid/LintErrorChecker.php @@ -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; diff --git a/includes/registration/ExtensionDependencyError.php b/includes/registration/ExtensionDependencyError.php index 0cfebf47daba..087003335906 100644 --- a/includes/registration/ExtensionDependencyError.php +++ b/includes/registration/ExtensionDependencyError.php @@ -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' ); diff --git a/includes/registration/ExtensionJsonValidationError.php b/includes/registration/ExtensionJsonValidationError.php index f9a5a9dbfacd..10f477586769 100644 --- a/includes/registration/ExtensionJsonValidationError.php +++ b/includes/registration/ExtensionJsonValidationError.php @@ -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' ); diff --git a/includes/registration/ExtensionJsonValidator.php b/includes/registration/ExtensionJsonValidator.php index 0ee5e038ce0d..b876541e18ed 100644 --- a/includes/registration/ExtensionJsonValidator.php +++ b/includes/registration/ExtensionJsonValidator.php @@ -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' ); diff --git a/includes/registration/ExtensionProcessor.php b/includes/registration/ExtensionProcessor.php index a6018d2c3325..96e18bf4d12f 100644 --- a/includes/registration/ExtensionProcessor.php +++ b/includes/registration/ExtensionProcessor.php @@ -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' ); diff --git a/includes/registration/ExtensionRegistry.php b/includes/registration/ExtensionRegistry.php index 1dfb16e28943..120f1ad57b17 100644 --- a/includes/registration/ExtensionRegistry.php +++ b/includes/registration/ExtensionRegistry.php @@ -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' ); diff --git a/includes/registration/MissingExtensionException.php b/includes/registration/MissingExtensionException.php index d5682145b0ac..f521ddeaa094 100644 --- a/includes/registration/MissingExtensionException.php +++ b/includes/registration/MissingExtensionException.php @@ -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' ); diff --git a/includes/registration/Processor.php b/includes/registration/Processor.php index f4b7b226403f..34112fddcf44 100644 --- a/includes/registration/Processor.php +++ b/includes/registration/Processor.php @@ -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' ); diff --git a/includes/registration/VersionChecker.php b/includes/registration/VersionChecker.php index 2ac972ff94cc..05ca4e58be7d 100644 --- a/includes/registration/VersionChecker.php +++ b/includes/registration/VersionChecker.php @@ -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' ); diff --git a/includes/search/SearchHighlighter.php b/includes/search/SearchHighlighter.php index a6981b35fe6a..259d0e48dbab 100644 --- a/includes/search/SearchHighlighter.php +++ b/includes/search/SearchHighlighter.php @@ -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>)/'; } diff --git a/includes/specials/SpecialVersion.php b/includes/specials/SpecialVersion.php index 4e171fd2a114..ff4e6f3ad4cf 100644 --- a/includes/specials/SpecialVersion.php +++ b/includes/specials/SpecialVersion.php @@ -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; diff --git a/includes/user/Options/UserOptionsManager.php b/includes/user/Options/UserOptionsManager.php index f08dbf22b918..284894fbc3c0 100644 --- a/includes/user/Options/UserOptionsManager.php +++ b/includes/user/Options/UserOptionsManager.php @@ -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; diff --git a/includes/user/TempUser/TempUserCreator.php b/includes/user/TempUser/TempUserCreator.php index f1a145076e6c..51ce9e0b1703 100644 --- a/includes/user/TempUser/TempUserCreator.php +++ b/includes/user/TempUser/TempUserCreator.php @@ -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; diff --git a/maintenance/benchmarks/benchmarkSettings.php b/maintenance/benchmarks/benchmarkSettings.php index 7329a69ba12c..78017b86866f 100644 --- a/maintenance/benchmarks/benchmarkSettings.php +++ b/maintenance/benchmarks/benchmarkSettings.php @@ -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; diff --git a/maintenance/checkDependencies.php b/maintenance/checkDependencies.php index 36b70b48268b..bf4eeaf80393 100644 --- a/maintenance/checkDependencies.php +++ b/maintenance/checkDependencies.php @@ -21,6 +21,8 @@ */ use MediaWiki\MainConfigNames; +use MediaWiki\Registration\ExtensionDependencyError; +use MediaWiki\Registration\ExtensionRegistry; require_once __DIR__ . '/Maintenance.php'; diff --git a/maintenance/convertExtensionToRegistration.php b/maintenance/convertExtensionToRegistration.php index 46cb0ccb23e2..84ff6ee60539 100644 --- a/maintenance/convertExtensionToRegistration.php +++ b/maintenance/convertExtensionToRegistration.php @@ -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'; diff --git a/maintenance/includes/Maintenance.php b/maintenance/includes/Maintenance.php index b45f1fec8f10..39fb07384b7a 100644 --- a/maintenance/includes/Maintenance.php +++ b/maintenance/includes/Maintenance.php @@ -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; diff --git a/maintenance/manageForeignResources.php b/maintenance/manageForeignResources.php index ee3d5c682bb0..de643784eb14 100644 --- a/maintenance/manageForeignResources.php +++ b/maintenance/manageForeignResources.php @@ -18,6 +18,7 @@ * @file */ +use MediaWiki\Registration\ExtensionRegistry; use MediaWiki\ResourceLoader\ForeignResourceManager; require_once __DIR__ . '/Maintenance.php'; diff --git a/maintenance/mergeMessageFileList.php b/maintenance/mergeMessageFileList.php index 6e1c29c05e46..ff20a10083a4 100644 --- a/maintenance/mergeMessageFileList.php +++ b/maintenance/mergeMessageFileList.php @@ -24,6 +24,7 @@ # Start from scratch use MediaWiki\MainConfigNames; +use MediaWiki\Registration\ExtensionRegistry; use MediaWiki\Settings\SettingsBuilder; define( 'MW_NO_EXTENSION_MESSAGES', 1 ); diff --git a/maintenance/updateExtensionJsonSchema.php b/maintenance/updateExtensionJsonSchema.php index eee06ff91be7..c3d8db8d6609 100644 --- a/maintenance/updateExtensionJsonSchema.php +++ b/maintenance/updateExtensionJsonSchema.php @@ -2,6 +2,7 @@ use Composer\Semver\VersionParser; use MediaWiki\Json\FormatJson; +use MediaWiki\Registration\ExtensionRegistry; require_once __DIR__ . '/Maintenance.php'; diff --git a/maintenance/validateRegistrationFile.php b/maintenance/validateRegistrationFile.php index a704d61a9361..1a70e5b56465 100644 --- a/maintenance/validateRegistrationFile.php +++ b/maintenance/validateRegistrationFile.php @@ -1,5 +1,8 @@ <?php +use MediaWiki\Registration\ExtensionJsonValidationError; +use MediaWiki\Registration\ExtensionJsonValidator; + require_once __DIR__ . '/Maintenance.php'; class ValidateRegistrationFile extends Maintenance { diff --git a/tests/common/TestSetup.php b/tests/common/TestSetup.php index 225963558952..48a3b1ca1a18 100644 --- a/tests/common/TestSetup.php +++ b/tests/common/TestSetup.php @@ -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; /** diff --git a/tests/parser/ParserTestRunner.php b/tests/parser/ParserTestRunner.php index 116205532c7c..fe82342536e0 100644 --- a/tests/parser/ParserTestRunner.php +++ b/tests/parser/ParserTestRunner.php @@ -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; diff --git a/tests/phpunit/MediaWikiIntegrationTestCase.php b/tests/phpunit/MediaWikiIntegrationTestCase.php index a4bc63cc7246..a3a6ef86869e 100644 --- a/tests/phpunit/MediaWikiIntegrationTestCase.php +++ b/tests/phpunit/MediaWikiIntegrationTestCase.php @@ -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; diff --git a/tests/phpunit/MediaWikiUnitTestCase.php b/tests/phpunit/MediaWikiUnitTestCase.php index 5db2a7c084d3..0414d1f83603 100644 --- a/tests/phpunit/MediaWikiUnitTestCase.php +++ b/tests/phpunit/MediaWikiUnitTestCase.php @@ -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; diff --git a/tests/phpunit/bootstrap.php b/tests/phpunit/bootstrap.php index 7507124194e8..f332a579ea18 100644 --- a/tests/phpunit/bootstrap.php +++ b/tests/phpunit/bootstrap.php @@ -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'; diff --git a/tests/phpunit/getPHPUnitExtensionsAndSkins.php b/tests/phpunit/getPHPUnitExtensionsAndSkins.php index 6a6f28e03b46..e0d45ca2d3f7 100755 --- a/tests/phpunit/getPHPUnitExtensionsAndSkins.php +++ b/tests/phpunit/getPHPUnitExtensionsAndSkins.php @@ -18,6 +18,7 @@ use MediaWiki\HookContainer\HookRunner; use MediaWiki\MediaWikiServices; +use MediaWiki\Registration\ExtensionRegistry; require_once __DIR__ . '/bootstrap.common.php'; diff --git a/tests/phpunit/includes/HookContainer/HookContainerIntegrationTest.php b/tests/phpunit/includes/HookContainer/HookContainerIntegrationTest.php index d15452f2013d..de4168a4193b 100644 --- a/tests/phpunit/includes/HookContainer/HookContainerIntegrationTest.php +++ b/tests/phpunit/includes/HookContainer/HookContainerIntegrationTest.php @@ -2,7 +2,7 @@ namespace MediaWiki\Tests\HookContainer { - use ExtensionRegistry; + use MediaWiki\Registration\ExtensionRegistry; use Wikimedia\ScopedCallback; class HookContainerIntegrationTest extends \MediaWikiIntegrationTestCase { diff --git a/tests/phpunit/includes/ResourceLoader/OOUIImageModuleTest.php b/tests/phpunit/includes/ResourceLoader/OOUIImageModuleTest.php index 5c5c82046222..e6ea1e62313b 100644 --- a/tests/phpunit/includes/ResourceLoader/OOUIImageModuleTest.php +++ b/tests/phpunit/includes/ResourceLoader/OOUIImageModuleTest.php @@ -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; diff --git a/tests/phpunit/includes/ResourceLoader/ResourceLoaderTest.php b/tests/phpunit/includes/ResourceLoader/ResourceLoaderTest.php index 503ff1fda57e..1ca2b19e265d 100644 --- a/tests/phpunit/includes/ResourceLoader/ResourceLoaderTest.php +++ b/tests/phpunit/includes/ResourceLoader/ResourceLoaderTest.php @@ -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; diff --git a/tests/phpunit/includes/api/query/ApiQuerySiteinfoTest.php b/tests/phpunit/includes/api/query/ApiQuerySiteinfoTest.php index 21db3d9131d9..db7eb74805cb 100644 --- a/tests/phpunit/includes/api/query/ApiQuerySiteinfoTest.php +++ b/tests/phpunit/includes/api/query/ApiQuerySiteinfoTest.php @@ -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; diff --git a/tests/phpunit/includes/language/LanguageIntegrationTest.php b/tests/phpunit/includes/language/LanguageIntegrationTest.php index a0d101757105..e8271b3422ea 100644 --- a/tests/phpunit/includes/language/LanguageIntegrationTest.php +++ b/tests/phpunit/includes/language/LanguageIntegrationTest.php @@ -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; diff --git a/tests/phpunit/includes/parser/Parsoid/LintErrorCheckerTest.php b/tests/phpunit/includes/parser/Parsoid/LintErrorCheckerTest.php index 1a47cb8a1cfb..96c8c82149e7 100644 --- a/tests/phpunit/includes/parser/Parsoid/LintErrorCheckerTest.php +++ b/tests/phpunit/includes/parser/Parsoid/LintErrorCheckerTest.php @@ -20,6 +20,7 @@ use MediaWiki\MainConfigNames; use MediaWiki\Parser\Parsoid\LintErrorChecker; +use MediaWiki\Registration\ExtensionRegistry; /** * @group Parser diff --git a/tests/phpunit/includes/preferences/SignatureValidatorTest.php b/tests/phpunit/includes/preferences/SignatureValidatorTest.php index b2d938ac8b9f..2cf3ce1e4273 100644 --- a/tests/phpunit/includes/preferences/SignatureValidatorTest.php +++ b/tests/phpunit/includes/preferences/SignatureValidatorTest.php @@ -2,6 +2,7 @@ use MediaWiki\MainConfigNames; use MediaWiki\Preferences\SignatureValidator; +use MediaWiki\Registration\ExtensionRegistry; use Wikimedia\TestingAccessWrapper; /** diff --git a/tests/phpunit/includes/registration/ExtensionRegistrationTest.php b/tests/phpunit/includes/registration/ExtensionRegistrationTest.php index 3c0f759a60a4..826de10b288a 100644 --- a/tests/phpunit/includes/registration/ExtensionRegistrationTest.php +++ b/tests/phpunit/includes/registration/ExtensionRegistrationTest.php @@ -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 { diff --git a/tests/phpunit/integration/includes/Rest/Handler/ParsoidHandlerTest.php b/tests/phpunit/integration/includes/Rest/Handler/ParsoidHandlerTest.php index b6f6acce641e..e21710e6837c 100644 --- a/tests/phpunit/integration/includes/Rest/Handler/ParsoidHandlerTest.php +++ b/tests/phpunit/integration/includes/Rest/Handler/ParsoidHandlerTest.php @@ -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; diff --git a/tests/phpunit/integration/includes/user/TempUser/TempUserCreatorTest.php b/tests/phpunit/integration/includes/user/TempUser/TempUserCreatorTest.php index ea7e6459501d..392c289bf9dc 100644 --- a/tests/phpunit/integration/includes/user/TempUser/TempUserCreatorTest.php +++ b/tests/phpunit/integration/includes/user/TempUser/TempUserCreatorTest.php @@ -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; diff --git a/tests/phpunit/phpunit.php b/tests/phpunit/phpunit.php index 9ec392f8d0c6..9a28b48a9143 100644 --- a/tests/phpunit/phpunit.php +++ b/tests/phpunit/phpunit.php @@ -7,6 +7,7 @@ */ use MediaWiki\MediaWikiServices; +use MediaWiki\Registration\ExtensionRegistry; use PHPUnit\TextUI\Command; class PHPUnitMaintClass { diff --git a/tests/phpunit/structure/ExtensionJsonValidationTest.php b/tests/phpunit/structure/ExtensionJsonValidationTest.php index 781b1fd6f743..6e9c09cb1452 100644 --- a/tests/phpunit/structure/ExtensionJsonValidationTest.php +++ b/tests/phpunit/structure/ExtensionJsonValidationTest.php @@ -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. diff --git a/tests/phpunit/structure/SettingsTest.php b/tests/phpunit/structure/SettingsTest.php index 4bd5fdd26d07..e2a8d18db024 100644 --- a/tests/phpunit/structure/SettingsTest.php +++ b/tests/phpunit/structure/SettingsTest.php @@ -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; diff --git a/tests/phpunit/suites/ExtensionsTestSuite.php b/tests/phpunit/suites/ExtensionsTestSuite.php index be7064e327a7..bfb77f2854f2 100644 --- a/tests/phpunit/suites/ExtensionsTestSuite.php +++ b/tests/phpunit/suites/ExtensionsTestSuite.php @@ -2,6 +2,7 @@ use MediaWiki\HookContainer\HookRunner; use MediaWiki\MediaWikiServices; +use MediaWiki\Registration\ExtensionRegistry; use PHPUnit\Framework\TestSuite; use SebastianBergmann\FileIterator\Facade; diff --git a/tests/phpunit/unit/includes/Settings/LocalSettingsLoaderTest.php b/tests/phpunit/unit/includes/Settings/LocalSettingsLoaderTest.php index 2d88c65baf68..8a171d6ceedb 100644 --- a/tests/phpunit/unit/includes/Settings/LocalSettingsLoaderTest.php +++ b/tests/phpunit/unit/includes/Settings/LocalSettingsLoaderTest.php @@ -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; diff --git a/tests/phpunit/unit/includes/Settings/SettingsBuilderTest.php b/tests/phpunit/unit/includes/Settings/SettingsBuilderTest.php index 25cf4a01336e..aac4758507aa 100644 --- a/tests/phpunit/unit/includes/Settings/SettingsBuilderTest.php +++ b/tests/phpunit/unit/includes/Settings/SettingsBuilderTest.php @@ -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; diff --git a/tests/phpunit/unit/includes/Settings/WikiFarmSettingsLoaderTest.php b/tests/phpunit/unit/includes/Settings/WikiFarmSettingsLoaderTest.php index 6544cfb045ad..91f625cf9279 100644 --- a/tests/phpunit/unit/includes/Settings/WikiFarmSettingsLoaderTest.php +++ b/tests/phpunit/unit/includes/Settings/WikiFarmSettingsLoaderTest.php @@ -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; diff --git a/tests/phpunit/unit/includes/SetupDynamicConfigTest.php b/tests/phpunit/unit/includes/SetupDynamicConfigTest.php index b358cc1638ad..f9e5edb496c7 100644 --- a/tests/phpunit/unit/includes/SetupDynamicConfigTest.php +++ b/tests/phpunit/unit/includes/SetupDynamicConfigTest.php @@ -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; diff --git a/tests/phpunit/unit/includes/registration/ExtensionJsonValidatorTest.php b/tests/phpunit/unit/includes/registration/ExtensionJsonValidatorTest.php index ecc09b012c13..948101053ba9 100644 --- a/tests/phpunit/unit/includes/registration/ExtensionJsonValidatorTest.php +++ b/tests/phpunit/unit/includes/registration/ExtensionJsonValidatorTest.php @@ -18,8 +18,11 @@ * */ +use MediaWiki\Registration\ExtensionJsonValidationError; +use MediaWiki\Registration\ExtensionJsonValidator; + /** - * @covers \ExtensionJsonValidator + * @covers \MediaWiki\Registration\ExtensionJsonValidator */ class ExtensionJsonValidatorTest extends MediaWikiUnitTestCase { diff --git a/tests/phpunit/unit/includes/registration/ExtensionProcessorTest.php b/tests/phpunit/unit/includes/registration/ExtensionProcessorTest.php index 607a4904bb88..0978d7bdb91e 100644 --- a/tests/phpunit/unit/includes/registration/ExtensionProcessorTest.php +++ b/tests/phpunit/unit/includes/registration/ExtensionProcessorTest.php @@ -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 { diff --git a/tests/phpunit/unit/includes/registration/ExtensionRegistryTest.php b/tests/phpunit/unit/includes/registration/ExtensionRegistryTest.php index 64f52a3fa276..e54a18c3989f 100644 --- a/tests/phpunit/unit/includes/registration/ExtensionRegistryTest.php +++ b/tests/phpunit/unit/includes/registration/ExtensionRegistryTest.php @@ -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 { diff --git a/tests/phpunit/unit/includes/registration/VersionCheckerTest.php b/tests/phpunit/unit/includes/registration/VersionCheckerTest.php index 9ed6f113bfdd..a852a384c99f 100644 --- a/tests/phpunit/unit/includes/registration/VersionCheckerTest.php +++ b/tests/phpunit/unit/includes/registration/VersionCheckerTest.php @@ -1,7 +1,9 @@ <?php +use MediaWiki\Registration\VersionChecker; + /** - * @covers \VersionChecker + * @covers \MediaWiki\Registration\VersionChecker */ class VersionCheckerTest extends MediaWikiUnitTestCase { |