Use real type hints for services etc. in api/ except ApiQuery*.php

Mostly used find-and-replace:

Find:
/\*[\*\s]+@var (I?[A-Z](\w+)(?:Interface)?)[\s\*]+/\s*(private|protected|public) (\$[a-z]\w+;\n)((?=\s*/\*[\*\s]+@var (I?[A-Z](\w+)(?:Interface)?))\n|)
Replace with:
\3 \1 \4

Followed by some manual review to make sure I'm not changing too much,
omitting some changes that looked too complicated and anything that
caused test failures, and some whitespace fixes.

Change-Id: I6ec7587607df4f1a4f448a096c3e44c4e5270b70
This commit is contained in:
Bartosz Dziewoński 2023-08-28 17:32:58 +02:00 committed by DannyS712
parent c03cb71796
commit 365a588238
42 changed files with 119 additions and 314 deletions

View file

@ -30,8 +30,7 @@ use MediaWiki\Auth\AuthManager;
*/
class ApiAMCreateAccount extends ApiBase {
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiMain $main

View file

@ -44,8 +44,7 @@ class ApiAuthManagerHelper {
/** @var string Message output format */
private $messageFormat;
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiBase $module API module, for context and parameters

View file

@ -52,26 +52,13 @@ class ApiBlock extends ApiBase {
use ApiBlockInfoTrait;
use ApiWatchlistTrait;
/** @var BlockPermissionCheckerFactory */
private $blockPermissionCheckerFactory;
/** @var BlockUserFactory */
private $blockUserFactory;
/** @var TitleFactory */
private $titleFactory;
/** @var UserIdentityLookup */
private $userIdentityLookup;
/** @var WatchedItemStoreInterface */
private $watchedItemStore;
/** @var BlockUtils */
private $blockUtils;
/** @var BlockActionInfo */
private $blockActionInfo;
private BlockPermissionCheckerFactory $blockPermissionCheckerFactory;
private BlockUserFactory $blockUserFactory;
private TitleFactory $titleFactory;
private UserIdentityLookup $userIdentityLookup;
private WatchedItemStoreInterface $watchedItemStore;
private BlockUtils $blockUtils;
private BlockActionInfo $blockActionInfo;
/**
* @param ApiMain $main

View file

@ -33,8 +33,7 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiCSPReport extends ApiBase {
/** @var LoggerInterface */
private $log;
private LoggerInterface $log;
/**
* These reports should be small. Ignore super big reports out of paranoia

View file

@ -29,8 +29,7 @@ use MediaWiki\MainConfigNames;
* @ingroup API
*/
class ApiChangeAuthenticationData extends ApiBase {
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiMain $main

View file

@ -16,11 +16,8 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiChangeContentModel extends ApiBase {
/** @var IContentHandlerFactory */
private $contentHandlerFactory;
/** @var ContentModelChangeFactory */
private $contentModelChangeFactory;
private IContentHandlerFactory $contentHandlerFactory;
private ContentModelChangeFactory $contentModelChangeFactory;
/**
* @param ApiMain $main

View file

@ -29,8 +29,7 @@ use MediaWiki\User\TalkPageNotificationManager;
*/
class ApiClearHasMsg extends ApiBase {
/** @var TalkPageNotificationManager */
private $talkPageNotificationManager;
private TalkPageNotificationManager $talkPageNotificationManager;
/**
* @param ApiMain $main

View file

@ -31,8 +31,7 @@ use MediaWiki\Auth\CreateFromLoginAuthenticationRequest;
*/
class ApiClientLogin extends ApiBase {
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiMain $main

View file

@ -38,33 +38,19 @@ use Wikimedia\RequestTimeout\TimeoutException;
*/
class ApiComparePages extends ApiBase {
/** @var RevisionStore */
private $revisionStore;
/** @var SlotRoleRegistry */
private $slotRoleRegistry;
private RevisionStore $revisionStore;
private SlotRoleRegistry $slotRoleRegistry;
/** @var Title|null|false */
private $guessedTitle = false;
private $props;
/** @var IContentHandlerFactory */
private $contentHandlerFactory;
/** @var ContentTransformer */
private $contentTransformer;
/** @var CommentFormatter */
private $commentFormatter;
/** @var TempUserCreator */
private $tempUserCreator;
/** @var UserFactory */
private $userFactory;
/** @var DifferenceEngine */
private $differenceEngine;
private IContentHandlerFactory $contentHandlerFactory;
private ContentTransformer $contentTransformer;
private CommentFormatter $commentFormatter;
private TempUserCreator $tempUserCreator;
private UserFactory $userFactory;
private DifferenceEngine $differenceEngine;
/**
* @param ApiMain $mainModule

View file

@ -39,11 +39,8 @@ class ApiDelete extends ApiBase {
use ApiWatchlistTrait;
/** @var RepoGroup */
private $repoGroup;
/** @var DeletePageFactory */
private $deletePageFactory;
private RepoGroup $repoGroup;
private DeletePageFactory $deletePageFactory;
/**
* @param ApiMain $mainModule

View file

@ -57,26 +57,13 @@ use Wikimedia\ParamValidator\TypeDef\IntegerDef;
class ApiEditPage extends ApiBase {
use ApiWatchlistTrait;
/** @var IContentHandlerFactory */
private $contentHandlerFactory;
/** @var RevisionLookup */
private $revisionLookup;
/** @var WatchedItemStoreInterface */
private $watchedItemStore;
/** @var WikiPageFactory */
private $wikiPageFactory;
/** @var RedirectLookup */
private $redirectLookup;
/** @var TempUserCreator */
private $tempUserCreator;
/** @var UserFactory */
private $userFactory;
private IContentHandlerFactory $contentHandlerFactory;
private RevisionLookup $revisionLookup;
private WatchedItemStoreInterface $watchedItemStore;
private WikiPageFactory $wikiPageFactory;
private RedirectLookup $redirectLookup;
private TempUserCreator $tempUserCreator;
private UserFactory $userFactory;
/**
* Sends a cookie so anons get talk message notifications, mirroring SubmitAction (T295910)

View file

@ -32,11 +32,8 @@ use Wikimedia\ParamValidator\ParamValidator;
* @ingroup API
*/
class ApiExpandTemplates extends ApiBase {
/** @var RevisionStore */
private $revisionStore;
/** @var Parser */
private $parser;
private RevisionStore $revisionStore;
private Parser $parser;
/**
* @param ApiMain $main

View file

@ -43,35 +43,16 @@ use Wikimedia\Rdbms\IConnectionProvider;
*/
class ApiFeedContributions extends ApiBase {
/** @var RevisionStore */
private $revisionStore;
/** @var TitleParser */
private $titleParser;
/** @var LinkRenderer */
private $linkRenderer;
/** @var LinkBatchFactory */
private $linkBatchFactory;
/** @var HookContainer */
private $hookContainer;
/** @var IConnectionProvider */
private $dbProvider;
/** @var NamespaceInfo */
private $namespaceInfo;
/** @var UserFactory */
private $userFactory;
/** @var CommentFormatter */
private $commentFormatter;
/** @var ApiHookRunner */
private $hookRunner;
private RevisionStore $revisionStore;
private TitleParser $titleParser;
private LinkRenderer $linkRenderer;
private LinkBatchFactory $linkBatchFactory;
private HookContainer $hookContainer;
private IConnectionProvider $dbProvider;
private NamespaceInfo $namespaceInfo;
private UserFactory $userFactory;
private CommentFormatter $commentFormatter;
private ApiHookRunner $hookRunner;
/**
* @param ApiMain $main

View file

@ -36,8 +36,7 @@ class ApiFeedRecentChanges extends ApiBase {
private $params;
/** @var SpecialPageFactory */
private $specialPageFactory;
private SpecialPageFactory $specialPageFactory;
/**
* @param ApiMain $mainModule

View file

@ -39,8 +39,7 @@ class ApiFeedWatchlist extends ApiBase {
private $watchlistModule = null;
private $linkToSections = false;
/** @var Parser */
private $parser;
private Parser $parser;
/**
* @param ApiMain $main

View file

@ -38,8 +38,7 @@ use Wikimedia\RemexHtml\Serializer\SerializerNode;
* @ingroup API
*/
class ApiHelp extends ApiBase {
/** @var SkinFactory */
private $skinFactory;
private SkinFactory $skinFactory;
/**
* @param ApiMain $main

View file

@ -56,8 +56,7 @@ class ApiHookRunner implements
\MediaWiki\Hook\UserLogoutCompleteHook,
\MediaWiki\SpecialPage\Hook\ChangeAuthenticationDataAuditHook
{
/** @var HookContainer */
private $container;
private HookContainer $container;
public function __construct( HookContainer $container ) {
$this->container = $container;

View file

@ -29,14 +29,9 @@ use Wikimedia\ParamValidator\ParamValidator;
class ApiImageRotate extends ApiBase {
private $mPageSet = null;
/** @var RepoGroup */
private $repoGroup;
/** @var TempFSFileFactory */
private $tempFSFileFactory;
/** @var TitleFactory */
private $titleFactory;
private RepoGroup $repoGroup;
private TempFSFileFactory $tempFSFileFactory;
private TitleFactory $titleFactory;
/**
* @param ApiMain $mainModule

View file

@ -30,8 +30,7 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiImport extends ApiBase {
/** @var WikiImporterFactory */
private $wikiImporterFactory;
private WikiImporterFactory $wikiImporterFactory;
/**
* @param ApiMain $main

View file

@ -30,8 +30,7 @@ use MediaWiki\Auth\AuthManager;
*/
class ApiLinkAccount extends ApiBase {
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiMain $main

View file

@ -35,8 +35,7 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiLogin extends ApiBase {
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiMain $main

View file

@ -32,8 +32,7 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiMergeHistory extends ApiBase {
/** @var MergeHistoryFactory */
private $mergeHistoryFactory;
private MergeHistoryFactory $mergeHistoryFactory;
/**
* @param ApiMain $mainModule

View file

@ -36,11 +36,8 @@ class ApiMove extends ApiBase {
use ApiWatchlistTrait;
/** @var MovePageFactory */
private $movePageFactory;
/** @var RepoGroup */
private $repoGroup;
private MovePageFactory $movePageFactory;
private RepoGroup $repoGroup;
public function __construct(
ApiMain $mainModule,

View file

@ -41,11 +41,8 @@ class ApiOpenSearch extends ApiBase {
/** @var array list of api allowed params */
private $allowedParams = null;
/** @var LinkBatchFactory */
private $linkBatchFactory;
/** @var UrlUtils */
private $urlUtils;
private LinkBatchFactory $linkBatchFactory;
private UrlUtils $urlUtils;
/**
* @param ApiMain $mainModule

View file

@ -37,11 +37,8 @@ class ApiOptions extends ApiBase {
/** @var User User account to modify */
private $userForUpdates;
/** @var UserOptionsManager */
private $userOptionsManager;
/** @var PreferencesFactory */
private $preferencesFactory;
private UserOptionsManager $userOptionsManager;
private PreferencesFactory $preferencesFactory;
/**
* @param ApiMain $main

View file

@ -159,32 +159,15 @@ class ApiPageSet extends ApiBase {
/** @var string[]|null see getGenerators() */
private static $generators = null;
/** @var Language */
private $contentLanguage;
/** @var LinkCache */
private $linkCache;
/** @var NamespaceInfo */
private $namespaceInfo;
/** @var GenderCache */
private $genderCache;
/** @var LinkBatchFactory */
private $linkBatchFactory;
/** @var TitleFactory */
private $titleFactory;
/** @var ILanguageConverter */
private $languageConverter;
/** @var SpecialPageFactory */
private $specialPageFactory;
/** @var WikiPageFactory */
private $wikiPageFactory;
private Language $contentLanguage;
private LinkCache $linkCache;
private NamespaceInfo $namespaceInfo;
private GenderCache $genderCache;
private LinkBatchFactory $linkBatchFactory;
private TitleFactory $titleFactory;
private ILanguageConverter $languageConverter;
private SpecialPageFactory $specialPageFactory;
private WikiPageFactory $wikiPageFactory;
/**
* Add all items from $values into the result

View file

@ -60,50 +60,21 @@ class ApiParse extends ApiBase {
/** @var bool */
private $contentIsDeleted = false, $contentIsSuppressed = false;
/** @var RevisionLookup */
private $revisionLookup;
/** @var SkinFactory */
private $skinFactory;
/** @var LanguageNameUtils */
private $languageNameUtils;
/** @var LinkBatchFactory */
private $linkBatchFactory;
/** @var LinkCache */
private $linkCache;
/** @var IContentHandlerFactory */
private $contentHandlerFactory;
/** @var Parser */
private $parser;
/** @var WikiPageFactory */
private $wikiPageFactory;
/** @var ContentTransformer */
private $contentTransformer;
/** @var CommentFormatter */
private $commentFormatter;
/** @var ContentRenderer */
private $contentRenderer;
/** @var TempUserCreator */
private $tempUserCreator;
/** @var UserFactory */
private $userFactory;
/** @var UrlUtils */
private $urlUtils;
/** @var TitleFormatter */
private $titleFormatter;
private RevisionLookup $revisionLookup;
private SkinFactory $skinFactory;
private LanguageNameUtils $languageNameUtils;
private LinkBatchFactory $linkBatchFactory;
private LinkCache $linkCache;
private IContentHandlerFactory $contentHandlerFactory;
private Parser $parser;
private WikiPageFactory $wikiPageFactory;
private ContentTransformer $contentTransformer;
private CommentFormatter $commentFormatter;
private ContentRenderer $contentRenderer;
private TempUserCreator $tempUserCreator;
private UserFactory $userFactory;
private UrlUtils $urlUtils;
private TitleFormatter $titleFormatter;
/**
* @param ApiMain $main

View file

@ -30,8 +30,7 @@ use Wikimedia\ParamValidator\ParamValidator;
* @ingroup API
*/
class ApiPatrol extends ApiBase {
/** @var RevisionStore */
private $revisionStore;
private RevisionStore $revisionStore;
/**
* @param ApiMain $main

View file

@ -33,8 +33,7 @@ class ApiProtect extends ApiBase {
use ApiWatchlistTrait;
/** @var RestrictionStore */
private $restrictionStore;
private RestrictionStore $restrictionStore;
/**
* @param ApiMain $mainModule

View file

@ -29,11 +29,8 @@ class ApiPurge extends ApiBase {
/** @var ApiPageSet|null */
private $mPageSet = null;
/** @var WikiPageFactory */
private $wikiPageFactory;
/** @var TitleFormatter */
private $titleFormatter;
private WikiPageFactory $wikiPageFactory;
private TitleFormatter $titleFormatter;
/**
* @param ApiMain $mainModule

View file

@ -34,8 +34,7 @@ class ApiRemoveAuthenticationData extends ApiBase {
private $authAction;
private $operation;
/** @var AuthManager */
private $authManager;
private AuthManager $authManager;
/**
* @param ApiMain $main

View file

@ -32,8 +32,7 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiResetPassword extends ApiBase {
/** @var PasswordReset */
private $passwordReset;
private PasswordReset $passwordReset;
/**
* @param ApiMain $main

View file

@ -36,8 +36,7 @@ class ApiRollback extends ApiBase {
use ApiWatchlistTrait;
/** @var RollbackPageFactory */
private $rollbackPageFactory;
private RollbackPageFactory $rollbackPageFactory;
public function __construct(
ApiMain $mainModule,

View file

@ -37,20 +37,11 @@ class ApiSetNotificationTimestamp extends ApiBase {
private $mPageSet = null;
/** @var RevisionStore */
private $revisionStore;
/** @var IConnectionProvider */
private $dbProvider;
/** @var WatchedItemStoreInterface */
private $watchedItemStore;
/** @var TitleFormatter */
private $titleFormatter;
/** @var TitleFactory */
private $titleFactory;
private RevisionStore $revisionStore;
private IConnectionProvider $dbProvider;
private WatchedItemStoreInterface $watchedItemStore;
private TitleFormatter $titleFormatter;
private TitleFactory $titleFactory;
/**
* @param ApiMain $main

View file

@ -34,11 +34,8 @@ use Wikimedia\Rdbms\IConnectionProvider;
*/
class ApiSetPageLanguage extends ApiBase {
/** @var IConnectionProvider */
private $dbProvider;
/** @var LanguageNameUtils */
private $languageNameUtils;
private IConnectionProvider $dbProvider;
private LanguageNameUtils $languageNameUtils;
/**
* @param ApiMain $mainModule

View file

@ -42,26 +42,13 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiStashEdit extends ApiBase {
/** @var IContentHandlerFactory */
private $contentHandlerFactory;
/** @var PageEditStash */
private $pageEditStash;
/** @var RevisionLookup */
private $revisionLookup;
/** @var IBufferingStatsdDataFactory */
private $statsdDataFactory;
/** @var WikiPageFactory */
private $wikiPageFactory;
/** @var TempUserCreator */
private $tempUserCreator;
/** @var UserFactory */
private $userFactory;
private IContentHandlerFactory $contentHandlerFactory;
private PageEditStash $pageEditStash;
private RevisionLookup $revisionLookup;
private IBufferingStatsdDataFactory $statsdDataFactory;
private WikiPageFactory $wikiPageFactory;
private TempUserCreator $tempUserCreator;
private UserFactory $userFactory;
/**
* @param ApiMain $main

View file

@ -33,11 +33,8 @@ class ApiTag extends ApiBase {
use ApiBlockInfoTrait;
/** @var IDatabase */
private $dbr;
/** @var RevisionStore */
private $revisionStore;
private IDatabase $dbr;
private RevisionStore $revisionStore;
private ChangeTagsStore $changeTagsStore;
/**

View file

@ -43,17 +43,10 @@ class ApiUnblock extends ApiBase {
use ApiBlockInfoTrait;
use ApiWatchlistTrait;
/** @var BlockPermissionCheckerFactory */
private $permissionCheckerFactory;
/** @var UnblockUserFactory */
private $unblockUserFactory;
/** @var UserIdentityLookup */
private $userIdentityLookup;
/** @var WatchedItemStoreInterface */
private $watchedItemStore;
private BlockPermissionCheckerFactory $permissionCheckerFactory;
private UnblockUserFactory $unblockUserFactory;
private UserIdentityLookup $userIdentityLookup;
private WatchedItemStoreInterface $watchedItemStore;
public function __construct(
ApiMain $main,

View file

@ -37,11 +37,8 @@ class ApiUndelete extends ApiBase {
use ApiWatchlistTrait;
/** @var UndeletePageFactory */
private $undeletePageFactory;
/** @var WikiPageFactory */
private $wikiPageFactory;
private UndeletePageFactory $undeletePageFactory;
private WikiPageFactory $wikiPageFactory;
/**
* @param ApiMain $mainModule

View file

@ -40,8 +40,7 @@ class ApiUpload extends ApiBase {
protected $mParams;
/** @var JobQueueGroup */
private $jobQueueGroup;
private JobQueueGroup $jobQueueGroup;
/**
* @param ApiMain $mainModule

View file

@ -45,11 +45,8 @@ class ApiUserrights extends ApiBase {
/** @var UserIdentity|null */
private $mUser = null;
/** @var UserGroupManager */
private $userGroupManager;
/** @var WatchedItemStoreInterface */
private $watchedItemStore;
private UserGroupManager $userGroupManager;
private WatchedItemStoreInterface $watchedItemStore;
/**
* @param ApiMain $mainModule

View file

@ -11,11 +11,8 @@ use Wikimedia\ParamValidator\ParamValidator;
*/
class ApiValidatePassword extends ApiBase {
/** @var AuthManager */
private $authManager;
/** @var UserFactory */
private $userFactory;
private AuthManager $authManager;
private UserFactory $userFactory;
/**
* @param ApiMain $mainModule