aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--RELEASE-NOTES-1.4437
-rw-r--r--autoload.php33
-rw-r--r--docs/config-schema.yaml34
-rw-r--r--includes/MainConfigSchema.php30
-rw-r--r--includes/MediaWikiEntryPoint.php4
-rw-r--r--includes/MediaWikiServices.php4
-rw-r--r--includes/RenameUser/Job/RenameUserDerivedJob.php2
-rw-r--r--includes/RenameUser/Job/RenameUserTableJob.php2
-rw-r--r--includes/RenameUser/RenameUser.php2
-rw-r--r--includes/RenameUser/RenameuserSQL.php4
-rw-r--r--includes/SiteStats/SiteStats.php2
-rw-r--r--includes/Storage/DerivedPageDataUpdater.php6
-rw-r--r--includes/Storage/PageUpdaterFactory.php2
-rw-r--r--includes/Storage/RevertedTagUpdateManager.php4
-rw-r--r--includes/api/ApiUpload.php8
-rw-r--r--includes/config-schema.php34
-rw-r--r--includes/deferred/CdnCacheUpdate.php2
-rw-r--r--includes/deferred/EnqueueableDataUpdate.php2
-rw-r--r--includes/deferred/JobQueueEnqueueUpdate.php2
-rw-r--r--includes/deferred/LinksUpdate/CategoryLinksTable.php2
-rw-r--r--includes/deferred/LinksUpdate/ImageLinksTable.php2
-rw-r--r--includes/deferred/LinksUpdate/LinksDeletionUpdate.php2
-rw-r--r--includes/deferred/LinksUpdate/LinksUpdate.php4
-rw-r--r--includes/deferred/LinksUpdate/PagePropsTable.php2
-rw-r--r--includes/deferred/RefreshSecondaryDataUpdate.php2
-rw-r--r--includes/filerepo/file/LocalFile.php2
-rw-r--r--includes/jobqueue/GenericParameterJob.php5
-rw-r--r--includes/jobqueue/IJobSpecification.php5
-rw-r--r--includes/jobqueue/Job.php6
-rw-r--r--includes/jobqueue/JobFactory.php2
-rw-r--r--includes/jobqueue/JobQueue.php19
-rw-r--r--includes/jobqueue/JobQueueDB.php24
-rw-r--r--includes/jobqueue/JobQueueFederated.php13
-rw-r--r--includes/jobqueue/JobQueueGroup.php8
-rw-r--r--includes/jobqueue/JobQueueGroupFactory.php1
-rw-r--r--includes/jobqueue/JobQueueMemory.php11
-rw-r--r--includes/jobqueue/JobQueueRedis.php23
-rw-r--r--includes/jobqueue/JobRunner.php10
-rw-r--r--includes/jobqueue/JobSpecification.php6
-rw-r--r--includes/jobqueue/RunnableJob.php5
-rw-r--r--includes/jobqueue/exception/JobQueueConnectionError.php5
-rw-r--r--includes/jobqueue/exception/JobQueueError.php7
-rw-r--r--includes/jobqueue/exception/JobQueueReadOnlyError.php5
-rw-r--r--includes/jobqueue/jobs/AssembleUploadChunksJob.php12
-rw-r--r--includes/jobqueue/jobs/CategoryMembershipChangeJob.php9
-rw-r--r--includes/jobqueue/jobs/CdnPurgeJob.php7
-rw-r--r--includes/jobqueue/jobs/DeleteLinksJob.php6
-rw-r--r--includes/jobqueue/jobs/DeletePageJob.php7
-rw-r--r--includes/jobqueue/jobs/DoubleRedirectJob.php6
-rw-r--r--includes/jobqueue/jobs/DuplicateJob.php9
-rw-r--r--includes/jobqueue/jobs/HTMLCacheUpdateJob.php7
-rw-r--r--includes/jobqueue/jobs/NullJob.php7
-rw-r--r--includes/jobqueue/jobs/ParsoidCachePrewarmJob.php7
-rw-r--r--includes/jobqueue/jobs/PublishStashedFileJob.php9
-rw-r--r--includes/jobqueue/jobs/RefreshLinksJob.php8
-rw-r--r--includes/jobqueue/jobs/RevertedTagUpdateJob.php8
-rw-r--r--includes/jobqueue/jobs/ThumbnailRenderJob.php9
-rw-r--r--includes/jobqueue/jobs/UploadFromUrlJob.php9
-rw-r--r--includes/jobqueue/jobs/UploadJobTrait.php8
-rw-r--r--includes/jobqueue/utils/BacklinkJobUtils.php6
-rw-r--r--includes/jobqueue/utils/PurgeJobUtils.php6
-rw-r--r--includes/page/Article.php4
-rw-r--r--includes/page/DeletePage.php4
-rw-r--r--includes/page/PageCommandFactory.php2
-rw-r--r--includes/page/UndeletePage.php2
-rw-r--r--includes/page/WikiPage.php2
-rw-r--r--includes/recentchanges/ChangeTrackingEventIngress.php4
-rw-r--r--includes/recentchanges/RecentChangesUpdateJob.php2
-rw-r--r--includes/specials/SpecialMovePage.php2
-rw-r--r--includes/specials/SpecialRunJobs.php2
-rw-r--r--includes/specials/SpecialUpload.php5
-rw-r--r--includes/user/UserEditTracker.php2
-rw-r--r--includes/user/UserGroupManager.php2
-rw-r--r--includes/watchlist/ActivityUpdateJob.php2
-rw-r--r--includes/watchlist/ClearUserWatchlistJob.php4
-rw-r--r--includes/watchlist/ClearWatchlistNotificationsJob.php4
-rw-r--r--includes/watchlist/WatchedItemStore.php2
-rw-r--r--includes/watchlist/WatchlistExpiryJob.php2
-rw-r--r--maintenance/fixDoubleRedirects.php1
-rw-r--r--tests/phpunit/includes/SiteStats/SiteStatsTest.php1
-rw-r--r--tests/phpunit/includes/Storage/DerivedPageDataUpdaterTest.php4
-rw-r--r--tests/phpunit/includes/jobqueue/JobFactoryTest.php2
-rw-r--r--tests/phpunit/includes/jobqueue/JobQueueMemoryTest.php6
-rw-r--r--tests/phpunit/includes/jobqueue/JobQueueTest.php7
-rw-r--r--tests/phpunit/includes/jobqueue/JobRunnerTest.php4
-rw-r--r--tests/phpunit/includes/jobqueue/JobTest.php7
-rw-r--r--tests/phpunit/includes/jobqueue/RefreshLinksPartitionTest.php4
-rw-r--r--tests/phpunit/includes/jobqueue/jobs/CategoryMembershipChangeJobTest.php3
-rw-r--r--tests/phpunit/includes/jobqueue/jobs/ParsoidCachePrewarmJobTest.php9
-rw-r--r--tests/phpunit/includes/jobqueue/jobs/RefreshLinksJobTest.php3
-rw-r--r--tests/phpunit/integration/includes/Storage/RevertedTagUpdateIntegrationTest.php4
-rw-r--r--tests/phpunit/integration/includes/jobqueue/JobQueueDBTest.php8
-rw-r--r--tests/phpunit/integration/includes/page/RollbackPageTest.php2
-rw-r--r--tests/phpunit/maintenance/FixDoubleRedirectsTest.php2
-rw-r--r--tests/phpunit/maintenance/GetConfigurationTest.php2
-rw-r--r--tests/phpunit/maintenance/ManageJobsTest.php2
-rw-r--r--tests/phpunit/maintenance/RunJobsTest.php2
-rw-r--r--tests/phpunit/maintenance/ShowJobsTest.php2
-rw-r--r--tests/phpunit/unit/includes/Storage/RevertedTagUpdateManagerTest.php2
-rw-r--r--tests/phpunit/unit/includes/jobqueue/JobSpecificationTest.php12
-rw-r--r--tests/phpunit/unit/includes/page/DeletePageTest.php2
-rw-r--r--tests/phpunit/unit/includes/page/UndeletePageTest.php2
-rw-r--r--tests/phpunit/unit/includes/user/UserGroupManagerFactoryTest.php2
103 files changed, 509 insertions, 158 deletions
diff --git a/RELEASE-NOTES-1.44 b/RELEASE-NOTES-1.44
index d27487214c4e..f2b2f36d01ef 100644
--- a/RELEASE-NOTES-1.44
+++ b/RELEASE-NOTES-1.44
@@ -405,6 +405,43 @@ because of Phabricator reports.
- MetadataStorageHelper
- OldLocalFile
- UnregisteredLocalFile
+ - MediaWiki\JobQueue:
+ - GenericParameterJob
+ - IJobSpecification
+ - Job
+ - JobQueue
+ - JobQueueDB
+ - JobQueueFederated
+ - JobQueueGroup
+ - JobQueueMemory
+ - JobQueueRedis
+ - JobRunner
+ - JobSpecification
+ - RunnableJob
+ - MediaWiki\JobQueue\Exceptions:
+ - JobQueueConnectionError
+ - JobQueueError
+ - JobQueueReadOnlyError
+ - MediaWiki\JobQueue\Jobs:
+ - AssembleUploadChunksJob
+ - CategoryMembershipChangeJob
+ - CdnPurgeJob
+ - DeleteLinksJob
+ - DeletePageJob
+ - DoubleRedirectJob
+ - DuplicateJob
+ - HTMLCacheUpdateJob
+ - NullJob
+ - ParsoidCachePrewarmJob
+ - PublishStashedFileJob
+ - RefreshLinksJob
+ - RevertedTagUpdateJob
+ - ThumbnailRenderJob
+ - UploadFromUrlJob
+ - UploadJobTrait
+ - MediaWiki\JobQueue\Utils:
+ - BacklinkJobUtils
+ - PurgeJobUtils
- MediaWiki\Logging:
- BlockLogFormatter
- ContentModelLogFormatter
diff --git a/autoload.php b/autoload.php
index f39542c6997d..8476d0d19b5c 100644
--- a/autoload.php
+++ b/autoload.php
@@ -1844,8 +1844,41 @@ $wgAutoloadLocalClasses = [
'MediaWiki\\Interwiki\\InterwikiLookup' => __DIR__ . '/includes/interwiki/InterwikiLookup.php',
'MediaWiki\\Interwiki\\InterwikiLookupAdapter' => __DIR__ . '/includes/interwiki/InterwikiLookupAdapter.php',
'MediaWiki\\Interwiki\\NullInterwikiLookup' => __DIR__ . '/includes/interwiki/NullInterwikiLookup.php',
+ 'MediaWiki\\JobQueue\\Exceptions\\JobQueueConnectionError' => __DIR__ . '/includes/jobqueue/exception/JobQueueConnectionError.php',
+ 'MediaWiki\\JobQueue\\Exceptions\\JobQueueError' => __DIR__ . '/includes/jobqueue/exception/JobQueueError.php',
+ 'MediaWiki\\JobQueue\\Exceptions\\JobQueueReadOnlyError' => __DIR__ . '/includes/jobqueue/exception/JobQueueReadOnlyError.php',
+ 'MediaWiki\\JobQueue\\GenericParameterJob' => __DIR__ . '/includes/jobqueue/GenericParameterJob.php',
+ 'MediaWiki\\JobQueue\\IJobSpecification' => __DIR__ . '/includes/jobqueue/IJobSpecification.php',
+ 'MediaWiki\\JobQueue\\Job' => __DIR__ . '/includes/jobqueue/Job.php',
'MediaWiki\\JobQueue\\JobFactory' => __DIR__ . '/includes/jobqueue/JobFactory.php',
+ 'MediaWiki\\JobQueue\\JobQueue' => __DIR__ . '/includes/jobqueue/JobQueue.php',
+ 'MediaWiki\\JobQueue\\JobQueueDB' => __DIR__ . '/includes/jobqueue/JobQueueDB.php',
+ 'MediaWiki\\JobQueue\\JobQueueFederated' => __DIR__ . '/includes/jobqueue/JobQueueFederated.php',
+ 'MediaWiki\\JobQueue\\JobQueueGroup' => __DIR__ . '/includes/jobqueue/JobQueueGroup.php',
'MediaWiki\\JobQueue\\JobQueueGroupFactory' => __DIR__ . '/includes/jobqueue/JobQueueGroupFactory.php',
+ 'MediaWiki\\JobQueue\\JobQueueMemory' => __DIR__ . '/includes/jobqueue/JobQueueMemory.php',
+ 'MediaWiki\\JobQueue\\JobQueueRedis' => __DIR__ . '/includes/jobqueue/JobQueueRedis.php',
+ 'MediaWiki\\JobQueue\\JobRunner' => __DIR__ . '/includes/jobqueue/JobRunner.php',
+ 'MediaWiki\\JobQueue\\JobSpecification' => __DIR__ . '/includes/jobqueue/JobSpecification.php',
+ 'MediaWiki\\JobQueue\\Jobs\\AssembleUploadChunksJob' => __DIR__ . '/includes/jobqueue/jobs/AssembleUploadChunksJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\CategoryMembershipChangeJob' => __DIR__ . '/includes/jobqueue/jobs/CategoryMembershipChangeJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\CdnPurgeJob' => __DIR__ . '/includes/jobqueue/jobs/CdnPurgeJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\DeleteLinksJob' => __DIR__ . '/includes/jobqueue/jobs/DeleteLinksJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\DeletePageJob' => __DIR__ . '/includes/jobqueue/jobs/DeletePageJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\DoubleRedirectJob' => __DIR__ . '/includes/jobqueue/jobs/DoubleRedirectJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\DuplicateJob' => __DIR__ . '/includes/jobqueue/jobs/DuplicateJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\HTMLCacheUpdateJob' => __DIR__ . '/includes/jobqueue/jobs/HTMLCacheUpdateJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\NullJob' => __DIR__ . '/includes/jobqueue/jobs/NullJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\ParsoidCachePrewarmJob' => __DIR__ . '/includes/jobqueue/jobs/ParsoidCachePrewarmJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\PublishStashedFileJob' => __DIR__ . '/includes/jobqueue/jobs/PublishStashedFileJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob' => __DIR__ . '/includes/jobqueue/jobs/RefreshLinksJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\RevertedTagUpdateJob' => __DIR__ . '/includes/jobqueue/jobs/RevertedTagUpdateJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\ThumbnailRenderJob' => __DIR__ . '/includes/jobqueue/jobs/ThumbnailRenderJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\UploadFromUrlJob' => __DIR__ . '/includes/jobqueue/jobs/UploadFromUrlJob.php',
+ 'MediaWiki\\JobQueue\\Jobs\\UploadJobTrait' => __DIR__ . '/includes/jobqueue/jobs/UploadJobTrait.php',
+ 'MediaWiki\\JobQueue\\RunnableJob' => __DIR__ . '/includes/jobqueue/RunnableJob.php',
+ 'MediaWiki\\JobQueue\\Utils\\BacklinkJobUtils' => __DIR__ . '/includes/jobqueue/utils/BacklinkJobUtils.php',
+ 'MediaWiki\\JobQueue\\Utils\\PurgeJobUtils' => __DIR__ . '/includes/jobqueue/utils/PurgeJobUtils.php',
'MediaWiki\\Json\\FormatJson' => __DIR__ . '/includes/json/FormatJson.php',
'MediaWiki\\Json\\JsonCodec' => __DIR__ . '/includes/json/JsonCodec.php',
'MediaWiki\\Json\\JsonConstants' => __DIR__ . '/includes/json/JsonConstants.php',
diff --git a/docs/config-schema.yaml b/docs/config-schema.yaml
index d9eda8d8d267..60acbc182e6f 100644
--- a/docs/config-schema.yaml
+++ b/docs/config-schema.yaml
@@ -7247,32 +7247,32 @@ config-schema:
injection in MediaWiki.
JobClasses:
default:
- deletePage: DeletePageJob
- refreshLinks: RefreshLinksJob
- deleteLinks: DeleteLinksJob
- htmlCacheUpdate: HTMLCacheUpdateJob
+ deletePage: MediaWiki\JobQueue\Jobs\DeletePageJob
+ refreshLinks: MediaWiki\JobQueue\Jobs\RefreshLinksJob
+ deleteLinks: MediaWiki\JobQueue\Jobs\DeleteLinksJob
+ htmlCacheUpdate: MediaWiki\JobQueue\Jobs\HTMLCacheUpdateJob
sendMail: { class: EmaillingJob, services: [Emailer] }
enotifNotify: EnotifNotifyJob
- fixDoubleRedirect: { class: DoubleRedirectJob, services: [RevisionLookup, MagicWordFactory, WikiPageFactory], needsPage: true }
- AssembleUploadChunks: AssembleUploadChunksJob
- PublishStashedFile: PublishStashedFileJob
- ThumbnailRender: ThumbnailRenderJob
- UploadFromUrl: UploadFromUrlJob
+ fixDoubleRedirect: { class: MediaWiki\JobQueue\Jobs\DoubleRedirectJob, services: [RevisionLookup, MagicWordFactory, WikiPageFactory], needsPage: true }
+ AssembleUploadChunks: MediaWiki\JobQueue\Jobs\AssembleUploadChunksJob
+ PublishStashedFile: MediaWiki\JobQueue\Jobs\PublishStashedFileJob
+ ThumbnailRender: MediaWiki\JobQueue\Jobs\ThumbnailRenderJob
+ UploadFromUrl: MediaWiki\JobQueue\Jobs\UploadFromUrlJob
recentChangesUpdate: MediaWiki\RecentChanges\RecentChangesUpdateJob
- refreshLinksPrioritized: RefreshLinksJob
- refreshLinksDynamic: RefreshLinksJob
+ refreshLinksPrioritized: MediaWiki\JobQueue\Jobs\RefreshLinksJob
+ refreshLinksDynamic: MediaWiki\JobQueue\Jobs\RefreshLinksJob
activityUpdateJob: MediaWiki\Watchlist\ActivityUpdateJob
- categoryMembershipChange: CategoryMembershipChangeJob
+ categoryMembershipChange: MediaWiki\JobQueue\Jobs\CategoryMembershipChangeJob
clearUserWatchlist: MediaWiki\Watchlist\ClearUserWatchlistJob
watchlistExpiry: MediaWiki\Watchlist\WatchlistExpiryJob
- cdnPurge: CdnPurgeJob
+ cdnPurge: MediaWiki\JobQueue\Jobs\CdnPurgeJob
userGroupExpiry: UserGroupExpiryJob
clearWatchlistNotifications: MediaWiki\Watchlist\ClearWatchlistNotificationsJob
userOptionsUpdate: UserOptionsUpdateJob
- revertedTagUpdate: RevertedTagUpdateJob
- 'null': NullJob
+ revertedTagUpdate: MediaWiki\JobQueue\Jobs\RevertedTagUpdateJob
+ 'null': MediaWiki\JobQueue\Jobs\NullJob
userEditCountInit: UserEditCountInitJob
- parsoidCachePrewarm: { class: ParsoidCachePrewarmJob, services: [ParserOutputAccess, PageStore, RevisionLookup, ParsoidSiteConfig], needsPage: false }
+ parsoidCachePrewarm: { class: MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob, services: [ParserOutputAccess, PageStore, RevisionLookup, ParsoidSiteConfig], needsPage: false }
renameUserTable: { class: MediaWiki\RenameUser\Job\RenameUserTableJob, services: [MainConfig, DBLoadBalancerFactory] }
renameUserDerived: { class: MediaWiki\RenameUser\Job\RenameUserDerivedJob, services: [RenameUserFactory, UserFactory] }
renameUser: { class: MediaWiki\RenameUser\Job\RenameUserTableJob, services: [MainConfig, DBLoadBalancerFactory] }
@@ -7321,7 +7321,7 @@ config-schema:
These settings should be global to all wikis.
JobTypeConf:
default:
- default: { class: JobQueueDB, order: random, claimTTL: 3600 }
+ default: { class: MediaWiki\JobQueue\JobQueueDB, order: random, claimTTL: 3600 }
additionalProperties:
type: object
properties: { class: { type: string }, order: { type: string }, claimTTL: { type: integer } }
diff --git a/includes/MainConfigSchema.php b/includes/MainConfigSchema.php
index aafd4813c3a1..7814ed757e4f 100644
--- a/includes/MainConfigSchema.php
+++ b/includes/MainConfigSchema.php
@@ -11,20 +11,12 @@
// phpcs:disable Generic.Files.LineLength.TooLong
namespace MediaWiki;
-use AssembleUploadChunksJob;
-use CategoryMembershipChangeJob;
-use CdnPurgeJob;
use DateTime;
use DateTimeZone;
-use DeleteLinksJob;
-use DeletePageJob;
-use DoubleRedirectJob;
use EmaillingJob;
use EnotifNotifyJob;
use Generator;
-use HTMLCacheUpdateJob;
use InvalidArgumentException;
-use JobQueueDB;
use LocalisationCache;
use MediaWiki\Auth\CheckBlocksSecondaryAuthenticationProvider;
use MediaWiki\Auth\EmailNotificationSecondaryAuthenticationProvider;
@@ -43,6 +35,21 @@ use MediaWiki\Content\TextContentHandler;
use MediaWiki\Content\WikitextContentHandler;
use MediaWiki\Deferred\SiteStatsUpdate;
use MediaWiki\FileRepo\LocalRepo;
+use MediaWiki\JobQueue\JobQueueDB;
+use MediaWiki\JobQueue\Jobs\AssembleUploadChunksJob;
+use MediaWiki\JobQueue\Jobs\CategoryMembershipChangeJob;
+use MediaWiki\JobQueue\Jobs\CdnPurgeJob;
+use MediaWiki\JobQueue\Jobs\DeleteLinksJob;
+use MediaWiki\JobQueue\Jobs\DeletePageJob;
+use MediaWiki\JobQueue\Jobs\DoubleRedirectJob;
+use MediaWiki\JobQueue\Jobs\HTMLCacheUpdateJob;
+use MediaWiki\JobQueue\Jobs\NullJob;
+use MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob;
+use MediaWiki\JobQueue\Jobs\PublishStashedFileJob;
+use MediaWiki\JobQueue\Jobs\RefreshLinksJob;
+use MediaWiki\JobQueue\Jobs\RevertedTagUpdateJob;
+use MediaWiki\JobQueue\Jobs\ThumbnailRenderJob;
+use MediaWiki\JobQueue\Jobs\UploadFromUrlJob;
use MediaWiki\Logging\BlockLogFormatter;
use MediaWiki\Logging\ContentModelLogFormatter;
use MediaWiki\Logging\DeleteLogFormatter;
@@ -81,15 +88,8 @@ use MediaWiki\Watchlist\ActivityUpdateJob;
use MediaWiki\Watchlist\ClearUserWatchlistJob;
use MediaWiki\Watchlist\ClearWatchlistNotificationsJob;
use MediaWiki\Watchlist\WatchlistExpiryJob;
-use NullJob;
-use ParsoidCachePrewarmJob;
-use PublishStashedFileJob;
use ReflectionClass;
-use RefreshLinksJob;
-use RevertedTagUpdateJob;
use SqlBagOStuff;
-use ThumbnailRenderJob;
-use UploadFromUrlJob;
use UserEditCountInitJob;
use UserGroupExpiryJob;
use UserOptionsUpdateJob;
diff --git a/includes/MediaWikiEntryPoint.php b/includes/MediaWikiEntryPoint.php
index 76fb6dad18f0..d4b55cebb1c0 100644
--- a/includes/MediaWikiEntryPoint.php
+++ b/includes/MediaWikiEntryPoint.php
@@ -22,8 +22,6 @@ namespace MediaWiki;
use Exception;
use HttpStatus;
-use JobQueueGroup;
-use JobRunner;
use Liuggio\StatsdClient\Sender\SocketSender;
use Liuggio\StatsdClient\StatsdClient;
use LogicException;
@@ -34,7 +32,9 @@ use MediaWiki\Context\IContextSource;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Deferred\TransactionRoundDefiningUpdate;
use MediaWiki\HookContainer\ProtectedHookAccessorTrait;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\JobQueue\JobQueueGroupFactory;
+use MediaWiki\JobQueue\JobRunner;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Request\WebRequest;
use MediaWiki\Request\WebResponse;
diff --git a/includes/MediaWikiServices.php b/includes/MediaWikiServices.php
index cef228023a25..a4c64ecaeef4 100644
--- a/includes/MediaWikiServices.php
+++ b/includes/MediaWikiServices.php
@@ -22,8 +22,6 @@ namespace MediaWiki;
use ExternalStoreAccess;
use ExternalStoreFactory;
-use JobQueueGroup;
-use JobRunner;
use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
use LocalisationCache;
use LogicException;
@@ -83,7 +81,9 @@ use MediaWiki\Installer\Pingback;
use MediaWiki\Interwiki\InterwikiLookup;
use MediaWiki\Interwiki\NullInterwikiLookup;
use MediaWiki\JobQueue\JobFactory;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\JobQueue\JobQueueGroupFactory;
+use MediaWiki\JobQueue\JobRunner;
use MediaWiki\Json\JsonCodec;
use MediaWiki\Language\FormatterFactory;
use MediaWiki\Language\Language;
diff --git a/includes/RenameUser/Job/RenameUserDerivedJob.php b/includes/RenameUser/Job/RenameUserDerivedJob.php
index 240766c0708e..69042072c281 100644
--- a/includes/RenameUser/Job/RenameUserDerivedJob.php
+++ b/includes/RenameUser/Job/RenameUserDerivedJob.php
@@ -2,7 +2,7 @@
namespace MediaWiki\RenameUser\Job;
-use Job;
+use MediaWiki\JobQueue\Job;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\RenameUser\RenameUserFactory;
use MediaWiki\Title\Title;
diff --git a/includes/RenameUser/Job/RenameUserTableJob.php b/includes/RenameUser/Job/RenameUserTableJob.php
index 03552b40e1da..c6f7e497b62d 100644
--- a/includes/RenameUser/Job/RenameUserTableJob.php
+++ b/includes/RenameUser/Job/RenameUserTableJob.php
@@ -3,8 +3,8 @@
namespace MediaWiki\RenameUser\Job;
use InvalidArgumentException;
-use Job;
use MediaWiki\Config\Config;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MainConfigNames;
use MediaWiki\Title\Title;
use Wikimedia\Rdbms\ILBFactory;
diff --git a/includes/RenameUser/RenameUser.php b/includes/RenameUser/RenameUser.php
index a72fc0ab52f3..4b022b0ad4b3 100644
--- a/includes/RenameUser/RenameUser.php
+++ b/includes/RenameUser/RenameUser.php
@@ -2,11 +2,11 @@
namespace MediaWiki\RenameUser;
-use JobSpecification;
use LogicException;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Context\RequestContext;
use MediaWiki\JobQueue\JobQueueGroupFactory;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\MovePageFactory;
diff --git a/includes/RenameUser/RenameuserSQL.php b/includes/RenameUser/RenameuserSQL.php
index cf59dbcc0915..fa275c6978d7 100644
--- a/includes/RenameUser/RenameuserSQL.php
+++ b/includes/RenameUser/RenameuserSQL.php
@@ -2,9 +2,9 @@
namespace MediaWiki\RenameUser;
-use JobQueueGroup;
-use JobSpecification;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Logging\ManualLogEntry;
use MediaWiki\MainConfigNames;
diff --git a/includes/SiteStats/SiteStats.php b/includes/SiteStats/SiteStats.php
index 149e43e02196..27bd446cd1e5 100644
--- a/includes/SiteStats/SiteStats.php
+++ b/includes/SiteStats/SiteStats.php
@@ -22,7 +22,7 @@
namespace MediaWiki\SiteStats;
-use JobQueueError;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use stdClass;
diff --git a/includes/Storage/DerivedPageDataUpdater.php b/includes/Storage/DerivedPageDataUpdater.php
index 32a2b7ddbc9a..bd3794e9d09b 100644
--- a/includes/Storage/DerivedPageDataUpdater.php
+++ b/includes/Storage/DerivedPageDataUpdater.php
@@ -20,10 +20,8 @@
namespace MediaWiki\Storage;
-use CategoryMembershipChangeJob;
use ChangeTags;
use InvalidArgumentException;
-use JobQueueGroup;
use LogicException;
use MediaWiki\ChangeTags\ChangeTagsStore;
use MediaWiki\Config\ServiceOptions;
@@ -40,6 +38,9 @@ use MediaWiki\DomainEvent\DomainEventDispatcher;
use MediaWiki\Edit\PreparedEdit;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\CategoryMembershipChangeJob;
+use MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob;
use MediaWiki\Language\Language;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\Event\PageRevisionUpdatedEvent;
@@ -63,7 +64,6 @@ use MediaWiki\Title\Title;
use MediaWiki\User\UserIdentity;
use MediaWiki\Utils\MWTimestamp;
use MWUnknownContentModelException;
-use ParsoidCachePrewarmJob;
use Psr\Log\LoggerAwareInterface;
use Psr\Log\LoggerInterface;
use Psr\Log\NullLogger;
diff --git a/includes/Storage/PageUpdaterFactory.php b/includes/Storage/PageUpdaterFactory.php
index ee78ca622356..7bb77215d916 100644
--- a/includes/Storage/PageUpdaterFactory.php
+++ b/includes/Storage/PageUpdaterFactory.php
@@ -20,13 +20,13 @@
namespace MediaWiki\Storage;
-use JobQueueGroup;
use MediaWiki\ChangeTags\ChangeTagsStore;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Content\IContentHandlerFactory;
use MediaWiki\Content\Transform\ContentTransformer;
use MediaWiki\DomainEvent\DomainEventDispatcher;
use MediaWiki\HookContainer\HookContainer;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Language\Language;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\PageIdentity;
diff --git a/includes/Storage/RevertedTagUpdateManager.php b/includes/Storage/RevertedTagUpdateManager.php
index 60ef8c1b5e8c..2b2cdf9db921 100644
--- a/includes/Storage/RevertedTagUpdateManager.php
+++ b/includes/Storage/RevertedTagUpdateManager.php
@@ -20,8 +20,8 @@
namespace MediaWiki\Storage;
-use JobQueueGroup;
-use RevertedTagUpdateJob;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\RevertedTagUpdateJob;
/**
* Class for managing delayed RevertedTagUpdateJob waiting for user approval.
diff --git a/includes/api/ApiUpload.php b/includes/api/ApiUpload.php
index bb0b9971cfa6..b06a4164a23c 100644
--- a/includes/api/ApiUpload.php
+++ b/includes/api/ApiUpload.php
@@ -27,12 +27,14 @@
namespace MediaWiki\Api;
-use AssembleUploadChunksJob;
use ChangeTags;
use Exception;
-use JobQueueGroup;
use MediaWiki\Config\Config;
use MediaWiki\FileRepo\File\LocalFile;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\AssembleUploadChunksJob;
+use MediaWiki\JobQueue\Jobs\PublishStashedFileJob;
+use MediaWiki\JobQueue\Jobs\UploadFromUrlJob;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
@@ -42,14 +44,12 @@ use MediaWiki\User\Options\UserOptionsLookup;
use MediaWiki\User\User;
use MediaWiki\Watchlist\WatchlistManager;
use Psr\Log\LoggerInterface;
-use PublishStashedFileJob;
use StatusValue;
use UploadBase;
use UploadFromChunks;
use UploadFromFile;
use UploadFromStash;
use UploadFromUrl;
-use UploadFromUrlJob;
use UploadStashBadPathException;
use UploadStashException;
use UploadStashFileException;
diff --git a/includes/config-schema.php b/includes/config-schema.php
index bbbf4187de76..a5618afdc7db 100644
--- a/includes/config-schema.php
+++ b/includes/config-schema.php
@@ -2111,10 +2111,10 @@ return [
'ServiceWiringFiles' => [
],
'JobClasses' => [
- 'deletePage' => 'DeletePageJob',
- 'refreshLinks' => 'RefreshLinksJob',
- 'deleteLinks' => 'DeleteLinksJob',
- 'htmlCacheUpdate' => 'HTMLCacheUpdateJob',
+ 'deletePage' => 'MediaWiki\\JobQueue\\Jobs\\DeletePageJob',
+ 'refreshLinks' => 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob',
+ 'deleteLinks' => 'MediaWiki\\JobQueue\\Jobs\\DeleteLinksJob',
+ 'htmlCacheUpdate' => 'MediaWiki\\JobQueue\\Jobs\\HTMLCacheUpdateJob',
'sendMail' => [
'class' => 'EmaillingJob',
'services' => [
@@ -2123,7 +2123,7 @@ return [
],
'enotifNotify' => 'EnotifNotifyJob',
'fixDoubleRedirect' => [
- 'class' => 'DoubleRedirectJob',
+ 'class' => 'MediaWiki\\JobQueue\\Jobs\\DoubleRedirectJob',
'services' => [
'RevisionLookup',
'MagicWordFactory',
@@ -2131,26 +2131,26 @@ return [
],
'needsPage' => true,
],
- 'AssembleUploadChunks' => 'AssembleUploadChunksJob',
- 'PublishStashedFile' => 'PublishStashedFileJob',
- 'ThumbnailRender' => 'ThumbnailRenderJob',
- 'UploadFromUrl' => 'UploadFromUrlJob',
+ 'AssembleUploadChunks' => 'MediaWiki\\JobQueue\\Jobs\\AssembleUploadChunksJob',
+ 'PublishStashedFile' => 'MediaWiki\\JobQueue\\Jobs\\PublishStashedFileJob',
+ 'ThumbnailRender' => 'MediaWiki\\JobQueue\\Jobs\\ThumbnailRenderJob',
+ 'UploadFromUrl' => 'MediaWiki\\JobQueue\\Jobs\\UploadFromUrlJob',
'recentChangesUpdate' => 'MediaWiki\\RecentChanges\\RecentChangesUpdateJob',
- 'refreshLinksPrioritized' => 'RefreshLinksJob',
- 'refreshLinksDynamic' => 'RefreshLinksJob',
+ 'refreshLinksPrioritized' => 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob',
+ 'refreshLinksDynamic' => 'MediaWiki\\JobQueue\\Jobs\\RefreshLinksJob',
'activityUpdateJob' => 'MediaWiki\\Watchlist\\ActivityUpdateJob',
- 'categoryMembershipChange' => 'CategoryMembershipChangeJob',
+ 'categoryMembershipChange' => 'MediaWiki\\JobQueue\\Jobs\\CategoryMembershipChangeJob',
'clearUserWatchlist' => 'MediaWiki\\Watchlist\\ClearUserWatchlistJob',
'watchlistExpiry' => 'MediaWiki\\Watchlist\\WatchlistExpiryJob',
- 'cdnPurge' => 'CdnPurgeJob',
+ 'cdnPurge' => 'MediaWiki\\JobQueue\\Jobs\\CdnPurgeJob',
'userGroupExpiry' => 'UserGroupExpiryJob',
'clearWatchlistNotifications' => 'MediaWiki\\Watchlist\\ClearWatchlistNotificationsJob',
'userOptionsUpdate' => 'UserOptionsUpdateJob',
- 'revertedTagUpdate' => 'RevertedTagUpdateJob',
- 'null' => 'NullJob',
+ 'revertedTagUpdate' => 'MediaWiki\\JobQueue\\Jobs\\RevertedTagUpdateJob',
+ 'null' => 'MediaWiki\\JobQueue\\Jobs\\NullJob',
'userEditCountInit' => 'UserEditCountInitJob',
'parsoidCachePrewarm' => [
- 'class' => 'ParsoidCachePrewarmJob',
+ 'class' => 'MediaWiki\\JobQueue\\Jobs\\ParsoidCachePrewarmJob',
'services' => [
'ParserOutputAccess',
'PageStore',
@@ -2190,7 +2190,7 @@ return [
],
'JobTypeConf' => [
'default' => [
- 'class' => 'JobQueueDB',
+ 'class' => 'MediaWiki\\JobQueue\\JobQueueDB',
'order' => 'random',
'claimTTL' => 3600,
],
diff --git a/includes/deferred/CdnCacheUpdate.php b/includes/deferred/CdnCacheUpdate.php
index 8c788ea248b4..eb9e9abee32d 100644
--- a/includes/deferred/CdnCacheUpdate.php
+++ b/includes/deferred/CdnCacheUpdate.php
@@ -20,9 +20,9 @@
namespace MediaWiki\Deferred;
-use CdnPurgeJob;
use Exception;
use InvalidArgumentException;
+use MediaWiki\JobQueue\Jobs\CdnPurgeJob;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageReference;
diff --git a/includes/deferred/EnqueueableDataUpdate.php b/includes/deferred/EnqueueableDataUpdate.php
index 81d24c43c56d..d60ce1b09f29 100644
--- a/includes/deferred/EnqueueableDataUpdate.php
+++ b/includes/deferred/EnqueueableDataUpdate.php
@@ -15,7 +15,7 @@ namespace MediaWiki\Deferred;
interface EnqueueableDataUpdate {
/**
* @return array (domain => DB domain ID, job => IJobSpecification)
- * @phan-return array{domain: string, job: \IJobSpecification}
+ * @phan-return array{domain: string, job: \MediaWiki\JobQueue\IJobSpecification}
*/
public function getAsJobSpecification();
}
diff --git a/includes/deferred/JobQueueEnqueueUpdate.php b/includes/deferred/JobQueueEnqueueUpdate.php
index 9ace913d3601..a4d1319cd27a 100644
--- a/includes/deferred/JobQueueEnqueueUpdate.php
+++ b/includes/deferred/JobQueueEnqueueUpdate.php
@@ -22,7 +22,7 @@
namespace MediaWiki\Deferred;
-use IJobSpecification;
+use MediaWiki\JobQueue\IJobSpecification;
use MediaWiki\JobQueue\JobQueueGroupFactory;
use MediaWiki\MediaWikiServices;
use MWExceptionHandler;
diff --git a/includes/deferred/LinksUpdate/CategoryLinksTable.php b/includes/deferred/LinksUpdate/CategoryLinksTable.php
index 351d25a351df..3a06391e824c 100644
--- a/includes/deferred/LinksUpdate/CategoryLinksTable.php
+++ b/includes/deferred/LinksUpdate/CategoryLinksTable.php
@@ -6,6 +6,7 @@ use Collation;
use MediaWiki\Config\Config;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\DAO\WikiAwareEntity;
+use MediaWiki\JobQueue\Utils\PurgeJobUtils;
use MediaWiki\Language\ILanguageConverter;
use MediaWiki\Languages\LanguageConverterFactory;
use MediaWiki\Logger\LoggerFactory;
@@ -17,7 +18,6 @@ use MediaWiki\Parser\Sanitizer;
use MediaWiki\Storage\NameTableStore;
use MediaWiki\Title\NamespaceInfo;
use MediaWiki\Title\Title;
-use PurgeJobUtils;
use Wikimedia\ObjectCache\WANObjectCache;
use Wikimedia\Rdbms\ILoadBalancer;
use Wikimedia\Rdbms\IResultWrapper;
diff --git a/includes/deferred/LinksUpdate/ImageLinksTable.php b/includes/deferred/LinksUpdate/ImageLinksTable.php
index db41d2f05470..6eebf40e63f0 100644
--- a/includes/deferred/LinksUpdate/ImageLinksTable.php
+++ b/includes/deferred/LinksUpdate/ImageLinksTable.php
@@ -3,11 +3,11 @@
namespace MediaWiki\Deferred\LinksUpdate;
use MediaWiki\DAO\WikiAwareEntity;
+use MediaWiki\JobQueue\Utils\PurgeJobUtils;
use MediaWiki\Page\PageReferenceValue;
use MediaWiki\Parser\ParserOutput;
use MediaWiki\Parser\ParserOutputLinkTypes;
use MediaWiki\Title\Title;
-use PurgeJobUtils;
/**
* imagelinks
diff --git a/includes/deferred/LinksUpdate/LinksDeletionUpdate.php b/includes/deferred/LinksUpdate/LinksDeletionUpdate.php
index 965c5a1696b0..0383ab8574b7 100644
--- a/includes/deferred/LinksUpdate/LinksDeletionUpdate.php
+++ b/includes/deferred/LinksUpdate/LinksDeletionUpdate.php
@@ -23,10 +23,10 @@
namespace MediaWiki\Deferred\LinksUpdate;
use InvalidArgumentException;
-use JobSpecification;
use MediaWiki\Category\Category;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Deferred\EnqueueableDataUpdate;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageIdentity;
diff --git a/includes/deferred/LinksUpdate/LinksUpdate.php b/includes/deferred/LinksUpdate/LinksUpdate.php
index 6e570d573316..3aed63046b69 100644
--- a/includes/deferred/LinksUpdate/LinksUpdate.php
+++ b/includes/deferred/LinksUpdate/LinksUpdate.php
@@ -23,12 +23,13 @@
namespace MediaWiki\Deferred\LinksUpdate;
use InvalidArgumentException;
-use Job;
use MediaWiki\Cache\BacklinkCache;
use MediaWiki\Deferred\AutoCommitUpdate;
use MediaWiki\Deferred\DataUpdate;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\HookContainer\ProtectedHookAccessorTrait;
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\Jobs\RefreshLinksJob;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
@@ -39,7 +40,6 @@ use MediaWiki\Parser\ParserOutput;
use MediaWiki\Revision\RevisionRecord;
use MediaWiki\Title\Title;
use MediaWiki\User\UserIdentity;
-use RefreshLinksJob;
use RuntimeException;
use Wikimedia\Rdbms\IConnectionProvider;
use Wikimedia\Rdbms\IDatabase;
diff --git a/includes/deferred/LinksUpdate/PagePropsTable.php b/includes/deferred/LinksUpdate/PagePropsTable.php
index 193e0859cf25..a7faed3addba 100644
--- a/includes/deferred/LinksUpdate/PagePropsTable.php
+++ b/includes/deferred/LinksUpdate/PagePropsTable.php
@@ -3,8 +3,8 @@
namespace MediaWiki\Deferred\LinksUpdate;
use HTMLCacheUpdateJob;
-use JobQueueGroup;
use MediaWiki\Config\ServiceOptions;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\MainConfigNames;
use MediaWiki\Parser\ParserOutput;
diff --git a/includes/deferred/RefreshSecondaryDataUpdate.php b/includes/deferred/RefreshSecondaryDataUpdate.php
index e0e68ff31683..00a017d35499 100644
--- a/includes/deferred/RefreshSecondaryDataUpdate.php
+++ b/includes/deferred/RefreshSecondaryDataUpdate.php
@@ -23,8 +23,8 @@
namespace MediaWiki\Deferred;
use Exception;
-use JobSpecification;
use MediaWiki\Deferred\LinksUpdate\LinksUpdate;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\Page\PageIdentity;
use MediaWiki\Revision\RevisionRecord;
use MediaWiki\Storage\DerivedPageDataUpdater;
diff --git a/includes/filerepo/file/LocalFile.php b/includes/filerepo/file/LocalFile.php
index 2814e526a5e3..d5917fdc88c9 100644
--- a/includes/filerepo/file/LocalFile.php
+++ b/includes/filerepo/file/LocalFile.php
@@ -33,6 +33,7 @@ use MediaWiki\Deferred\SiteStatsUpdate;
use MediaWiki\FileRepo\FileBackendDBRepoWrapper;
use MediaWiki\FileRepo\FileRepo;
use MediaWiki\FileRepo\LocalRepo;
+use MediaWiki\JobQueue\Jobs\ThumbnailRenderJob;
use MediaWiki\Language\Language;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Logging\LogEntryBase;
@@ -52,7 +53,6 @@ use MediaWiki\User\UserIdentityValue;
use MWFileProps;
use RuntimeException;
use stdClass;
-use ThumbnailRenderJob;
use UnexpectedValueException;
use Wikimedia\FileBackend\FileBackend;
use Wikimedia\FileBackend\FileBackendError;
diff --git a/includes/jobqueue/GenericParameterJob.php b/includes/jobqueue/GenericParameterJob.php
index 2763e61ccff0..b5d26502299a 100644
--- a/includes/jobqueue/GenericParameterJob.php
+++ b/includes/jobqueue/GenericParameterJob.php
@@ -18,6 +18,8 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
/**
* Interface for generic jobs only uses the parameters field and are JSON serializable.
* Jobs using this interface require `needsPage: false` to be set
@@ -33,3 +35,6 @@ interface GenericParameterJob extends IJobSpecification {
*/
public function __construct( array $params );
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( GenericParameterJob::class, 'GenericParameterJob' );
diff --git a/includes/jobqueue/IJobSpecification.php b/includes/jobqueue/IJobSpecification.php
index ca606843e112..0e8792fc8a02 100644
--- a/includes/jobqueue/IJobSpecification.php
+++ b/includes/jobqueue/IJobSpecification.php
@@ -18,6 +18,8 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
/**
* Interface for serializable objects that describe a job queue task
*
@@ -88,3 +90,6 @@ interface IJobSpecification {
*/
public function isRootJob();
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( IJobSpecification::class, 'IJobSpecification' );
diff --git a/includes/jobqueue/Job.php b/includes/jobqueue/Job.php
index 2d0aad8f9dd5..3a9d828a6b76 100644
--- a/includes/jobqueue/Job.php
+++ b/includes/jobqueue/Job.php
@@ -18,6 +18,9 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
+use InvalidArgumentException;
use MediaWiki\Http\Telemetry;
use MediaWiki\Json\FormatJson;
use MediaWiki\MediaWikiServices;
@@ -440,3 +443,6 @@ abstract class Job implements RunnableJob {
return $this->error;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( Job::class, 'Job' );
diff --git a/includes/jobqueue/JobFactory.php b/includes/jobqueue/JobFactory.php
index e90f28d27490..9471fdcb6b25 100644
--- a/includes/jobqueue/JobFactory.php
+++ b/includes/jobqueue/JobFactory.php
@@ -3,9 +3,7 @@
namespace MediaWiki\JobQueue;
use Closure;
-use GenericParameterJob;
use InvalidArgumentException;
-use Job;
use MediaWiki\Page\PageReference;
use MediaWiki\Title\Title;
use Wikimedia\ObjectFactory\ObjectFactory;
diff --git a/includes/jobqueue/JobQueue.php b/includes/jobqueue/JobQueue.php
index 3f128851250a..dcd07c1796ec 100644
--- a/includes/jobqueue/JobQueue.php
+++ b/includes/jobqueue/JobQueue.php
@@ -18,8 +18,14 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
+use ArrayIterator;
+use Exception;
use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
-use MediaWiki\JobQueue\JobFactory;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
+use MediaWiki\JobQueue\Exceptions\JobQueueReadOnlyError;
+use MediaWiki\JobQueue\Jobs\DuplicateJob;
use MediaWiki\MediaWikiServices;
use Wikimedia\ObjectCache\WANObjectCache;
use Wikimedia\RequestTimeout\TimeoutException;
@@ -634,7 +640,7 @@ abstract class JobQueue {
* This does not include jobs that are currently acquired or delayed.
* Note: results may be stale if the queue is concurrently modified.
*
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
*/
abstract public function getAllQueuedJobs();
@@ -644,7 +650,7 @@ abstract class JobQueue {
* Note: results may be stale if the queue is concurrently modified.
*
* @stable to override
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
* @since 1.22
*/
@@ -659,7 +665,7 @@ abstract class JobQueue {
* will be returned due to jobs being acknowledged and deleted
*
* @stable to override
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
* @since 1.26
*/
@@ -671,7 +677,7 @@ abstract class JobQueue {
* Get an iterator to traverse over all abandoned jobs in this queue
*
* @stable to override
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
* @since 1.25
*/
@@ -791,3 +797,6 @@ abstract class JobQueue {
return false;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueue::class, 'JobQueue' );
diff --git a/includes/jobqueue/JobQueueDB.php b/includes/jobqueue/JobQueueDB.php
index dba6dbe648c0..ab423684f4f7 100644
--- a/includes/jobqueue/JobQueueDB.php
+++ b/includes/jobqueue/JobQueueDB.php
@@ -17,7 +17,16 @@
*
* @file
*/
+
+namespace MediaWiki\JobQueue;
+
+use MappedIterator;
+use MediaWiki\JobQueue\Exceptions\JobQueueConnectionError;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
use MediaWiki\MediaWikiServices;
+use Profiler;
+use stdClass;
+use UnexpectedValueException;
use Wikimedia\Rdbms\DBConnectionError;
use Wikimedia\Rdbms\DBError;
use Wikimedia\Rdbms\IDatabase;
@@ -206,7 +215,7 @@ class JobQueueDB extends JobQueue {
* @see JobQueue::doBatchPush()
* @param IJobSpecification[] $jobs
* @param int $flags
- * @throws DBError|Exception
+ * @throws DBError|\Exception
* @return void
*/
protected function doBatchPush( array $jobs, $flags ) {
@@ -595,7 +604,7 @@ class JobQueueDB extends JobQueue {
/**
* @see JobQueue::getAllQueuedJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
*/
public function getAllQueuedJobs() {
return $this->getJobIterator( [ 'job_cmd' => $this->getType(), 'job_token' => '' ] );
@@ -603,7 +612,7 @@ class JobQueueDB extends JobQueue {
/**
* @see JobQueue::getAllAcquiredJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
*/
public function getAllAcquiredJobs() {
$dbr = $this->getReplicaDB();
@@ -612,7 +621,7 @@ class JobQueueDB extends JobQueue {
/**
* @see JobQueue::getAllAbandonedJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
*/
public function getAllAbandonedJobs() {
$dbr = $this->getReplicaDB();
@@ -625,7 +634,7 @@ class JobQueueDB extends JobQueue {
/**
* @param array $conds Query conditions
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
*/
protected function getJobIterator( array $conds ) {
$dbr = $this->getReplicaDB();
@@ -809,7 +818,7 @@ class JobQueueDB extends JobQueue {
'job_params' => self::makeBlob( $job->getParams() ),
// Additional job metadata
'job_timestamp' => $db->timestamp(),
- 'job_sha1' => Wikimedia\base_convert(
+ 'job_sha1' => \Wikimedia\base_convert(
sha1( serialize( $job->getDeduplicationInfo() ) ),
16, 36, 31
),
@@ -960,3 +969,6 @@ class JobQueueDB extends JobQueue {
];
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueDB::class, 'JobQueueDB' );
diff --git a/includes/jobqueue/JobQueueFederated.php b/includes/jobqueue/JobQueueFederated.php
index bac2847568ad..97f1c2254d53 100644
--- a/includes/jobqueue/JobQueueFederated.php
+++ b/includes/jobqueue/JobQueueFederated.php
@@ -18,6 +18,16 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
+use AppendIterator;
+use ArrayUtils;
+use Exception;
+use HashRing;
+use InvalidArgumentException;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
+use UnexpectedValueException;
+
/**
* Enqueue and run background jobs via a federated queue, for wiki farms.
*
@@ -485,3 +495,6 @@ class JobQueueFederated extends JobQueue {
}
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueFederated::class, 'JobQueueFederated' );
diff --git a/includes/jobqueue/JobQueueGroup.php b/includes/jobqueue/JobQueueGroup.php
index 193294b999e6..e222b8c0fefe 100644
--- a/includes/jobqueue/JobQueueGroup.php
+++ b/includes/jobqueue/JobQueueGroup.php
@@ -18,8 +18,13 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
+use InvalidArgumentException;
+use MapCacheLRU;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Deferred\JobQueueEnqueueUpdate;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
use MediaWiki\MediaWikiServices;
use Wikimedia\ObjectCache\WANObjectCache;
use Wikimedia\Rdbms\ReadOnlyMode;
@@ -448,3 +453,6 @@ class JobQueueGroup {
}
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueGroup::class, 'JobQueueGroup' );
diff --git a/includes/jobqueue/JobQueueGroupFactory.php b/includes/jobqueue/JobQueueGroupFactory.php
index 42eed837ebc5..7de6f909edab 100644
--- a/includes/jobqueue/JobQueueGroupFactory.php
+++ b/includes/jobqueue/JobQueueGroupFactory.php
@@ -20,7 +20,6 @@
namespace MediaWiki\JobQueue;
-use JobQueueGroup;
use LogicException;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\MainConfigNames;
diff --git a/includes/jobqueue/JobQueueMemory.php b/includes/jobqueue/JobQueueMemory.php
index 87df4b410b3d..0da95735eeb8 100644
--- a/includes/jobqueue/JobQueueMemory.php
+++ b/includes/jobqueue/JobQueueMemory.php
@@ -18,6 +18,10 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
+use ArrayIterator;
+use MappedIterator;
use Wikimedia\ObjectCache\HashBagOStuff;
use Wikimedia\ObjectCache\WANObjectCache;
@@ -168,7 +172,7 @@ class JobQueueMemory extends JobQueue {
/**
* @see JobQueue::getAllQueuedJobs
*
- * @return Iterator<RunnableJob> of Job objects.
+ * @return \Iterator<RunnableJob> of Job objects.
*/
public function getAllQueuedJobs() {
$unclaimed = $this->getQueueData( 'unclaimed' );
@@ -187,7 +191,7 @@ class JobQueueMemory extends JobQueue {
/**
* @see JobQueue::getAllAcquiredJobs
*
- * @return Iterator<RunnableJob> of Job objects.
+ * @return \Iterator<RunnableJob> of Job objects.
*/
public function getAllAcquiredJobs() {
$claimed = $this->getQueueData( 'claimed' );
@@ -229,3 +233,6 @@ class JobQueueMemory extends JobQueue {
return self::$data[$this->type][$this->domain][$field];
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueMemory::class, 'JobQueueMemory' );
diff --git a/includes/jobqueue/JobQueueRedis.php b/includes/jobqueue/JobQueueRedis.php
index 85f8f3c5b787..566bda1a5efe 100644
--- a/includes/jobqueue/JobQueueRedis.php
+++ b/includes/jobqueue/JobQueueRedis.php
@@ -18,9 +18,19 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
+use InvalidArgumentException;
+use LogicException;
+use MappedIterator;
+use MediaWiki\JobQueue\Exceptions\JobQueueConnectionError;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\WikiMap\WikiMap;
use Psr\Log\LoggerInterface;
+use Redis;
+use RedisException;
+use UnexpectedValueException;
use Wikimedia\ObjectCache\RedisConnectionPool;
use Wikimedia\ObjectCache\RedisConnRef;
@@ -517,7 +527,7 @@ LUA;
/**
* @see JobQueue::getAllQueuedJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
*/
public function getAllQueuedJobs() {
@@ -533,7 +543,7 @@ LUA;
/**
* @see JobQueue::getAllDelayedJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
*/
public function getAllDelayedJobs() {
@@ -549,7 +559,7 @@ LUA;
/**
* @see JobQueue::getAllAcquiredJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
*/
public function getAllAcquiredJobs() {
@@ -565,7 +575,7 @@ LUA;
/**
* @see JobQueue::getAllAbandonedJobs()
- * @return Iterator<RunnableJob>
+ * @return \Iterator<RunnableJob>
* @throws JobQueueError
*/
public function getAllAbandonedJobs() {
@@ -698,7 +708,7 @@ LUA;
// Additional job metadata
'uuid' => $this->idGenerator->newRawUUIDv4(),
'sha1' => $job->ignoreDuplicates()
- ? Wikimedia\base_convert( sha1( serialize( $job->getDeduplicationInfo() ) ), 16, 36, 31 )
+ ? \Wikimedia\base_convert( sha1( serialize( $job->getDeduplicationInfo() ) ), 16, 36, 31 )
: '',
'timestamp' => time() // UNIX timestamp
];
@@ -828,3 +838,6 @@ LUA;
return implode( ':', array_map( 'rawurlencode', $parts ) );
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueRedis::class, 'JobQueueRedis' );
diff --git a/includes/jobqueue/JobRunner.php b/includes/jobqueue/JobRunner.php
index 1f3162f06979..a0dac4e3ad4f 100644
--- a/includes/jobqueue/JobRunner.php
+++ b/includes/jobqueue/JobRunner.php
@@ -18,13 +18,20 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface;
+use LogicException;
use MediaWiki\Cache\LinkCache;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Http\Telemetry;
+use MediaWiki\JobQueue\Exceptions\JobQueueError;
+use MediaWiki\JobQueue\Jobs\DuplicateJob;
use MediaWiki\MainConfigNames;
+use MWExceptionHandler;
use Psr\Log\LoggerInterface;
+use Throwable;
use Wikimedia\Rdbms\DBConnectionError;
use Wikimedia\Rdbms\DBReadOnlyError;
use Wikimedia\Rdbms\ILBFactory;
@@ -613,3 +620,6 @@ class JobRunner {
}
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobRunner::class, 'JobRunner' );
diff --git a/includes/jobqueue/JobSpecification.php b/includes/jobqueue/JobSpecification.php
index 843f06963c9d..56b175b9c538 100644
--- a/includes/jobqueue/JobSpecification.php
+++ b/includes/jobqueue/JobSpecification.php
@@ -18,9 +18,12 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
use MediaWiki\Http\Telemetry;
use MediaWiki\Page\PageReference;
use MediaWiki\Page\PageReferenceValue;
+use UnexpectedValueException;
/**
* Job queue task description base code.
@@ -187,3 +190,6 @@ class JobSpecification implements IJobSpecification {
);
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobSpecification::class, 'JobSpecification' );
diff --git a/includes/jobqueue/RunnableJob.php b/includes/jobqueue/RunnableJob.php
index e664e5f45133..9b910494d521 100644
--- a/includes/jobqueue/RunnableJob.php
+++ b/includes/jobqueue/RunnableJob.php
@@ -18,6 +18,8 @@
* @file
*/
+namespace MediaWiki\JobQueue;
+
/**
* Job that has a run() method and metadata accessors for JobQueue::pop() and JobQueue::ack().
*
@@ -121,3 +123,6 @@ interface RunnableJob extends IJobSpecification {
*/
public function toString();
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( RunnableJob::class, 'RunnableJob' );
diff --git a/includes/jobqueue/exception/JobQueueConnectionError.php b/includes/jobqueue/exception/JobQueueConnectionError.php
index e28f15329cdb..b46c2121a1f6 100644
--- a/includes/jobqueue/exception/JobQueueConnectionError.php
+++ b/includes/jobqueue/exception/JobQueueConnectionError.php
@@ -18,6 +18,8 @@
* @file
*/
+namespace MediaWiki\JobQueue\Exceptions;
+
/**
* @newable
* @since 1.22
@@ -25,3 +27,6 @@
*/
class JobQueueConnectionError extends JobQueueError {
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueConnectionError::class, 'JobQueueConnectionError' );
diff --git a/includes/jobqueue/exception/JobQueueError.php b/includes/jobqueue/exception/JobQueueError.php
index 86696362936e..aadc62446810 100644
--- a/includes/jobqueue/exception/JobQueueError.php
+++ b/includes/jobqueue/exception/JobQueueError.php
@@ -18,6 +18,10 @@
* @file
*/
+namespace MediaWiki\JobQueue\Exceptions;
+
+use Exception;
+
/**
* @newable
* @since 1.22
@@ -25,3 +29,6 @@
*/
class JobQueueError extends Exception {
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueError::class, 'JobQueueError' );
diff --git a/includes/jobqueue/exception/JobQueueReadOnlyError.php b/includes/jobqueue/exception/JobQueueReadOnlyError.php
index c3af3e32fcd3..fcba67ef20c7 100644
--- a/includes/jobqueue/exception/JobQueueReadOnlyError.php
+++ b/includes/jobqueue/exception/JobQueueReadOnlyError.php
@@ -18,6 +18,8 @@
* @file
*/
+namespace MediaWiki\JobQueue\Exceptions;
+
/**
* @newable
* @since 1.22
@@ -26,3 +28,6 @@
class JobQueueReadOnlyError extends JobQueueError {
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( JobQueueReadOnlyError::class, 'JobQueueReadOnlyError' );
diff --git a/includes/jobqueue/jobs/AssembleUploadChunksJob.php b/includes/jobqueue/jobs/AssembleUploadChunksJob.php
index 607bf58495ae..95460b6b7525 100644
--- a/includes/jobqueue/jobs/AssembleUploadChunksJob.php
+++ b/includes/jobqueue/jobs/AssembleUploadChunksJob.php
@@ -18,11 +18,20 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use Exception;
use MediaWiki\Api\ApiUpload;
use MediaWiki\Context\RequestContext;
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Request\WebRequestUpload;
use MediaWiki\Status\Status;
+use MWExceptionHandler;
+use UnexpectedValueException;
+use UploadBase;
+use UploadFromChunks;
use Wikimedia\ScopedCallback;
/**
@@ -203,3 +212,6 @@ class AssembleUploadChunksJob extends Job implements GenericParameterJob {
return false;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( AssembleUploadChunksJob::class, 'AssembleUploadChunksJob' );
diff --git a/includes/jobqueue/jobs/CategoryMembershipChangeJob.php b/includes/jobqueue/jobs/CategoryMembershipChangeJob.php
index 1d6d9642a95b..2e25cd883f83 100644
--- a/includes/jobqueue/jobs/CategoryMembershipChangeJob.php
+++ b/includes/jobqueue/jobs/CategoryMembershipChangeJob.php
@@ -18,10 +18,16 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageIdentity;
use MediaWiki\Page\WikiPage;
+use MediaWiki\RecentChanges\CategoryMembershipChange;
+use MediaWiki\RecentChanges\RecentChange;
use MediaWiki\Revision\RevisionRecord;
use MediaWiki\Revision\RevisionStoreRecord;
use MediaWiki\Title\Title;
@@ -289,3 +295,6 @@ class CategoryMembershipChangeJob extends Job {
return $info;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( CategoryMembershipChangeJob::class, 'CategoryMembershipChangeJob' );
diff --git a/includes/jobqueue/jobs/CdnPurgeJob.php b/includes/jobqueue/jobs/CdnPurgeJob.php
index e897f5c0f897..b38f63aea5e3 100644
--- a/includes/jobqueue/jobs/CdnPurgeJob.php
+++ b/includes/jobqueue/jobs/CdnPurgeJob.php
@@ -18,7 +18,11 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
use MediaWiki\Deferred\CdnCacheUpdate;
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
/**
* Job to purge a set of URLs from CDN
@@ -39,3 +43,6 @@ class CdnPurgeJob extends Job implements GenericParameterJob {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( CdnPurgeJob::class, 'CdnPurgeJob' );
diff --git a/includes/jobqueue/jobs/DeleteLinksJob.php b/includes/jobqueue/jobs/DeleteLinksJob.php
index 59677efad123..079c7ac0790f 100644
--- a/includes/jobqueue/jobs/DeleteLinksJob.php
+++ b/includes/jobqueue/jobs/DeleteLinksJob.php
@@ -18,8 +18,11 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
use MediaWiki\Deferred\LinksUpdate\LinksDeletionUpdate;
use MediaWiki\Deferred\LinksUpdate\LinksUpdate;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MediaWikiServices;
use MediaWiki\Title\Title;
use Wikimedia\Rdbms\IDBAccessObject;
@@ -72,3 +75,6 @@ class DeleteLinksJob extends Job {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( DeleteLinksJob::class, 'DeleteLinksJob' );
diff --git a/includes/jobqueue/jobs/DeletePageJob.php b/includes/jobqueue/jobs/DeletePageJob.php
index f4e1feaf172f..96929bf8060e 100644
--- a/includes/jobqueue/jobs/DeletePageJob.php
+++ b/includes/jobqueue/jobs/DeletePageJob.php
@@ -1,5 +1,9 @@
<?php
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\DeletePage;
use MediaWiki\Title\Title;
@@ -44,3 +48,6 @@ class DeletePageJob extends Job implements GenericParameterJob {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( DeletePageJob::class, 'DeletePageJob' );
diff --git a/includes/jobqueue/jobs/DoubleRedirectJob.php b/includes/jobqueue/jobs/DoubleRedirectJob.php
index dd37b892f9a2..d3fff9ea9926 100644
--- a/includes/jobqueue/jobs/DoubleRedirectJob.php
+++ b/includes/jobqueue/jobs/DoubleRedirectJob.php
@@ -18,7 +18,10 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
use MediaWiki\Cache\CacheKeyHelper;
+use MediaWiki\JobQueue\Job;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageReference;
@@ -302,3 +305,6 @@ class DoubleRedirectJob extends Job {
return self::$user;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( DoubleRedirectJob::class, 'DoubleRedirectJob' );
diff --git a/includes/jobqueue/jobs/DuplicateJob.php b/includes/jobqueue/jobs/DuplicateJob.php
index 43fafbfb555f..81969bf4aff0 100644
--- a/includes/jobqueue/jobs/DuplicateJob.php
+++ b/includes/jobqueue/jobs/DuplicateJob.php
@@ -18,6 +18,12 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\RunnableJob;
+
/**
* No-op job that does nothing.
*
@@ -56,3 +62,6 @@ final class DuplicateJob extends Job implements GenericParameterJob {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( DuplicateJob::class, 'DuplicateJob' );
diff --git a/includes/jobqueue/jobs/HTMLCacheUpdateJob.php b/includes/jobqueue/jobs/HTMLCacheUpdateJob.php
index 632f086eaafc..fc385382a0a2 100644
--- a/includes/jobqueue/jobs/HTMLCacheUpdateJob.php
+++ b/includes/jobqueue/jobs/HTMLCacheUpdateJob.php
@@ -18,6 +18,10 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\Utils\BacklinkJobUtils;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageReference;
@@ -201,3 +205,6 @@ class HTMLCacheUpdateJob extends Job {
return 1; // one title
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( HTMLCacheUpdateJob::class, 'HTMLCacheUpdateJob' );
diff --git a/includes/jobqueue/jobs/NullJob.php b/includes/jobqueue/jobs/NullJob.php
index 6cf8212b8d54..def387c53ce9 100644
--- a/includes/jobqueue/jobs/NullJob.php
+++ b/includes/jobqueue/jobs/NullJob.php
@@ -18,6 +18,10 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MediaWikiServices;
/**
@@ -76,3 +80,6 @@ class NullJob extends Job implements GenericParameterJob {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( NullJob::class, 'NullJob' );
diff --git a/includes/jobqueue/jobs/ParsoidCachePrewarmJob.php b/includes/jobqueue/jobs/ParsoidCachePrewarmJob.php
index 3c79b351b360..4997ca92b525 100644
--- a/includes/jobqueue/jobs/ParsoidCachePrewarmJob.php
+++ b/includes/jobqueue/jobs/ParsoidCachePrewarmJob.php
@@ -18,6 +18,10 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Page\PageLookup;
use MediaWiki\Page\PageRecord;
@@ -164,3 +168,6 @@ class ParsoidCachePrewarmJob extends Job {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( ParsoidCachePrewarmJob::class, 'ParsoidCachePrewarmJob' );
diff --git a/includes/jobqueue/jobs/PublishStashedFileJob.php b/includes/jobqueue/jobs/PublishStashedFileJob.php
index 27ff97ef548a..21efe370b864 100644
--- a/includes/jobqueue/jobs/PublishStashedFileJob.php
+++ b/includes/jobqueue/jobs/PublishStashedFileJob.php
@@ -19,7 +19,13 @@
* @defgroup JobQueue JobQueue
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\Status\Status;
+use UploadBase;
+use UploadFromStash;
/**
* Upload a file from the upload stash into the local file repo.
@@ -79,3 +85,6 @@ class PublishStashedFileJob extends Job implements GenericParameterJob {
return $this->upload;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( PublishStashedFileJob::class, 'PublishStashedFileJob' );
diff --git a/includes/jobqueue/jobs/RefreshLinksJob.php b/includes/jobqueue/jobs/RefreshLinksJob.php
index aaea18432cea..b6647c55a290 100644
--- a/includes/jobqueue/jobs/RefreshLinksJob.php
+++ b/includes/jobqueue/jobs/RefreshLinksJob.php
@@ -18,8 +18,13 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\Actions\InfoAction;
use MediaWiki\Deferred\LinksUpdate\LinksUpdate;
use MediaWiki\Deferred\RefreshSecondaryDataUpdate;
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\Utils\BacklinkJobUtils;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
@@ -639,3 +644,6 @@ class RefreshLinksJob extends Job {
return 1; // one title
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( RefreshLinksJob::class, 'RefreshLinksJob' );
diff --git a/includes/jobqueue/jobs/RevertedTagUpdateJob.php b/includes/jobqueue/jobs/RevertedTagUpdateJob.php
index 7c220a7302f5..ef1b9765bce8 100644
--- a/includes/jobqueue/jobs/RevertedTagUpdateJob.php
+++ b/includes/jobqueue/jobs/RevertedTagUpdateJob.php
@@ -18,7 +18,12 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
use MediaWiki\Config\ServiceOptions;
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MediaWikiServices;
use MediaWiki\Storage\EditResult;
@@ -91,3 +96,6 @@ class RevertedTagUpdateJob extends Job implements GenericParameterJob {
return true;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( RevertedTagUpdateJob::class, 'RevertedTagUpdateJob' );
diff --git a/includes/jobqueue/jobs/ThumbnailRenderJob.php b/includes/jobqueue/jobs/ThumbnailRenderJob.php
index e0a23d3a0bdb..5fbdb3823bd6 100644
--- a/includes/jobqueue/jobs/ThumbnailRenderJob.php
+++ b/includes/jobqueue/jobs/ThumbnailRenderJob.php
@@ -18,6 +18,12 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaTransformError;
+use MediaWiki\FileRepo\File\File;
+use MediaWiki\FileRepo\File\LocalFile;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\Status\Status;
@@ -178,3 +184,6 @@ class ThumbnailRenderJob extends Job {
return false;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( ThumbnailRenderJob::class, 'ThumbnailRenderJob' );
diff --git a/includes/jobqueue/jobs/UploadFromUrlJob.php b/includes/jobqueue/jobs/UploadFromUrlJob.php
index 648312294302..dfd6b4484c8b 100644
--- a/includes/jobqueue/jobs/UploadFromUrlJob.php
+++ b/includes/jobqueue/jobs/UploadFromUrlJob.php
@@ -18,7 +18,13 @@
* @file
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\Status\Status;
+use UploadBase;
+use UploadFromUrl;
/**
* Upload a file by URL, via the jobqueue.
@@ -80,3 +86,6 @@ class UploadFromUrlJob extends Job implements GenericParameterJob {
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( UploadFromUrlJob::class, 'UploadFromUrlJob' );
diff --git a/includes/jobqueue/jobs/UploadJobTrait.php b/includes/jobqueue/jobs/UploadJobTrait.php
index 098c64cef3fb..1a734fb94b69 100644
--- a/includes/jobqueue/jobs/UploadJobTrait.php
+++ b/includes/jobqueue/jobs/UploadJobTrait.php
@@ -19,11 +19,16 @@
* @defgroup JobQueue JobQueue
*/
+namespace MediaWiki\JobQueue\Jobs;
+
+use Exception;
use MediaWiki\Api\ApiUpload;
use MediaWiki\Context\RequestContext;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Status\Status;
use MediaWiki\User\User;
+use MWExceptionHandler;
+use UploadBase;
use Wikimedia\ScopedCallback;
/**
@@ -311,3 +316,6 @@ trait UploadJobTrait {
abstract protected function addTeardownCallback( $callback );
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( UploadJobTrait::class, 'UploadJobTrait' );
diff --git a/includes/jobqueue/utils/BacklinkJobUtils.php b/includes/jobqueue/utils/BacklinkJobUtils.php
index 7d56f76c494d..0846ca0138bf 100644
--- a/includes/jobqueue/utils/BacklinkJobUtils.php
+++ b/includes/jobqueue/utils/BacklinkJobUtils.php
@@ -18,6 +18,9 @@
* @file
*/
+namespace MediaWiki\JobQueue\Utils;
+
+use MediaWiki\JobQueue\Job;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageIdentity;
@@ -152,3 +155,6 @@ class BacklinkJobUtils {
return $jobs;
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( BacklinkJobUtils::class, 'BacklinkJobUtils' );
diff --git a/includes/jobqueue/utils/PurgeJobUtils.php b/includes/jobqueue/utils/PurgeJobUtils.php
index b55d7362b8e3..44eb94423d9b 100644
--- a/includes/jobqueue/utils/PurgeJobUtils.php
+++ b/includes/jobqueue/utils/PurgeJobUtils.php
@@ -17,6 +17,9 @@
*
* @file
*/
+
+namespace MediaWiki\JobQueue\Utils;
+
use MediaWiki\Deferred\AutoCommitUpdate;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\MainConfigNames;
@@ -86,3 +89,6 @@ class PurgeJobUtils {
) );
}
}
+
+/** @deprecated class alias since 1.44 */
+class_alias( PurgeJobUtils::class, 'PurgeJobUtils' );
diff --git a/includes/page/Article.php b/includes/page/Article.php
index 4f5ac9ef2461..439939c27143 100644
--- a/includes/page/Article.php
+++ b/includes/page/Article.php
@@ -22,7 +22,6 @@ namespace MediaWiki\Page;
use HtmlArmor;
use HTMLFileCache;
-use JobQueueGroup;
use LogicException;
use MediaWiki\Block\DatabaseBlock;
use MediaWiki\Block\DatabaseBlockStore;
@@ -33,6 +32,8 @@ use MediaWiki\EditPage\EditPage;
use MediaWiki\HookContainer\HookRunner;
use MediaWiki\HookContainer\ProtectedHookAccessorTrait;
use MediaWiki\Html\Html;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob;
use MediaWiki\Language\Language;
use MediaWiki\Linker\Linker;
use MediaWiki\Linker\LinkRenderer;
@@ -59,7 +60,6 @@ use MediaWiki\User\Options\UserOptionsLookup;
use MediaWiki\User\UserIdentity;
use MediaWiki\User\UserNameUtils;
use MediaWiki\Xml\Xml;
-use ParsoidCachePrewarmJob;
use PermissionsError;
use Wikimedia\IPUtils;
use Wikimedia\NonSerializable\NonSerializableTrait;
diff --git a/includes/page/DeletePage.php b/includes/page/DeletePage.php
index 0552e68eff23..d3c792f16be5 100644
--- a/includes/page/DeletePage.php
+++ b/includes/page/DeletePage.php
@@ -4,9 +4,7 @@ namespace MediaWiki\Page;
use BadMethodCallException;
use ChangeTags;
-use DeletePageJob;
use Exception;
-use JobQueueGroup;
use LogicException;
use MediaWiki\Cache\BacklinkCacheFactory;
use MediaWiki\CommentStore\CommentStore;
@@ -20,6 +18,8 @@ use MediaWiki\Deferred\SiteStatsUpdate;
use MediaWiki\DomainEvent\DomainEventDispatcher;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\DeletePageJob;
use MediaWiki\Language\RawMessage;
use MediaWiki\Logging\ManualLogEntry;
use MediaWiki\MainConfigNames;
diff --git a/includes/page/PageCommandFactory.php b/includes/page/PageCommandFactory.php
index b432cf91fc25..662fd93681b1 100644
--- a/includes/page/PageCommandFactory.php
+++ b/includes/page/PageCommandFactory.php
@@ -21,7 +21,6 @@
namespace MediaWiki\Page;
-use JobQueueGroup;
use MediaWiki\Cache\BacklinkCacheFactory;
use MediaWiki\Collation\CollationFactory;
use MediaWiki\CommentStore\CommentStore;
@@ -33,6 +32,7 @@ use MediaWiki\DomainEvent\DomainEventDispatcher;
use MediaWiki\EditPage\SpamChecker;
use MediaWiki\FileRepo\RepoGroup;
use MediaWiki\HookContainer\HookContainer;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Linker\LinkTargetLookup;
use MediaWiki\Logging\LogFormatterFactory;
use MediaWiki\Permissions\Authority;
diff --git a/includes/page/UndeletePage.php b/includes/page/UndeletePage.php
index 90118f23d391..c863ed7e0d70 100644
--- a/includes/page/UndeletePage.php
+++ b/includes/page/UndeletePage.php
@@ -22,13 +22,13 @@ namespace MediaWiki\Page;
use ChangeTags;
use HTMLCacheUpdateJob;
-use JobQueueGroup;
use MediaWiki\Content\IContentHandlerFactory;
use MediaWiki\Content\ValidationParams;
use MediaWiki\FileRepo\File\LocalFile;
use MediaWiki\FileRepo\RepoGroup;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Logging\ManualLogEntry;
use MediaWiki\Page\Event\PageRevisionUpdatedEvent;
use MediaWiki\Permissions\Authority;
diff --git a/includes/page/WikiPage.php b/includes/page/WikiPage.php
index e3ea053673a3..8c4de8bc6bbc 100644
--- a/includes/page/WikiPage.php
+++ b/includes/page/WikiPage.php
@@ -33,6 +33,7 @@ use MediaWiki\DAO\WikiAwareEntityTrait;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Edit\PreparedEdit;
use MediaWiki\HookContainer\ProtectedHookAccessorTrait;
+use MediaWiki\JobQueue\Jobs\RefreshLinksJob;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Logging\ManualLogEntry;
@@ -62,7 +63,6 @@ use MediaWiki\User\UserArrayFromResult;
use MediaWiki\User\UserIdentity;
use MediaWiki\Utils\MWTimestamp;
use MediaWiki\WikiMap\WikiMap;
-use RefreshLinksJob;
use RuntimeException;
use stdClass;
use Stringable;
diff --git a/includes/recentchanges/ChangeTrackingEventIngress.php b/includes/recentchanges/ChangeTrackingEventIngress.php
index 65c4e350c8ac..f4efe4136820 100644
--- a/includes/recentchanges/ChangeTrackingEventIngress.php
+++ b/includes/recentchanges/ChangeTrackingEventIngress.php
@@ -2,13 +2,14 @@
namespace MediaWiki\RecentChanges;
-use JobQueueGroup;
use LogicException;
use MediaWiki\ChangeTags\ChangeTagsStore;
use MediaWiki\Config\Config;
use MediaWiki\DomainEvent\EventIngressBase;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\RevertedTagUpdateJob;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\Event\PageRevisionUpdatedEvent;
use MediaWiki\Page\Event\PageRevisionUpdatedListener;
@@ -21,7 +22,6 @@ use MediaWiki\User\User;
use MediaWiki\User\UserEditTracker;
use MediaWiki\User\UserIdentity;
use MediaWiki\User\UserNameUtils;
-use RevertedTagUpdateJob;
/**
* The ingress subscriber for the change tracking component. It updates change
diff --git a/includes/recentchanges/RecentChangesUpdateJob.php b/includes/recentchanges/RecentChangesUpdateJob.php
index a137c3f59a0a..9820ec20c88a 100644
--- a/includes/recentchanges/RecentChangesUpdateJob.php
+++ b/includes/recentchanges/RecentChangesUpdateJob.php
@@ -21,9 +21,9 @@
namespace MediaWiki\RecentChanges;
use InvalidArgumentException;
-use Job;
use MediaWiki\Deferred\SiteStatsUpdate;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\SpecialPage\SpecialPage;
diff --git a/includes/specials/SpecialMovePage.php b/includes/specials/SpecialMovePage.php
index 1693bc581b4d..94a9e4fd13fd 100644
--- a/includes/specials/SpecialMovePage.php
+++ b/includes/specials/SpecialMovePage.php
@@ -20,7 +20,6 @@
namespace MediaWiki\Specials;
-use DoubleRedirectJob;
use ErrorPageError;
use MediaWiki\Cache\LinkBatchFactory;
use MediaWiki\CommentStore\CommentStore;
@@ -28,6 +27,7 @@ use MediaWiki\Content\IContentHandlerFactory;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\FileRepo\RepoGroup;
use MediaWiki\Html\Html;
+use MediaWiki\JobQueue\Jobs\DoubleRedirectJob;
use MediaWiki\Logging\LogEventsList;
use MediaWiki\Logging\LogPage;
use MediaWiki\MainConfigNames;
diff --git a/includes/specials/SpecialRunJobs.php b/includes/specials/SpecialRunJobs.php
index a4aae06676e5..cb1d2ec57f72 100644
--- a/includes/specials/SpecialRunJobs.php
+++ b/includes/specials/SpecialRunJobs.php
@@ -21,9 +21,9 @@
namespace MediaWiki\Specials;
use HttpStatus;
-use JobRunner;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Deferred\TransactionRoundDefiningUpdate;
+use MediaWiki\JobQueue\JobRunner;
use MediaWiki\Json\FormatJson;
use MediaWiki\MainConfigNames;
use MediaWiki\SpecialPage\UnlistedSpecialPage;
diff --git a/includes/specials/SpecialUpload.php b/includes/specials/SpecialUpload.php
index fe696b40e2ea..65e62e2d55c0 100644
--- a/includes/specials/SpecialUpload.php
+++ b/includes/specials/SpecialUpload.php
@@ -24,7 +24,6 @@ use BitmapHandler;
use ChangeTags;
use ErrorPageError;
use ImageGalleryBase;
-use JobQueueGroup;
use MediaWiki\Config\Config;
use MediaWiki\FileRepo\File\LocalFile;
use MediaWiki\FileRepo\LocalRepo;
@@ -32,6 +31,8 @@ use MediaWiki\FileRepo\RepoGroup;
use MediaWiki\HookContainer\HookRunner;
use MediaWiki\Html\Html;
use MediaWiki\HTMLForm\HTMLForm;
+use MediaWiki\JobQueue\JobQueueGroup;
+use MediaWiki\JobQueue\Jobs\UploadFromUrlJob;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\Logging\LogEventsList;
use MediaWiki\MainConfigNames;
@@ -881,7 +882,7 @@ class SpecialUpload extends SpecialPage {
[ $pageText, $changeTags ] = $pageAndTags;
// Create a new job to process the upload from url
- $job = new \UploadFromUrlJob(
+ $job = new UploadFromUrlJob(
[
'filename' => $this->mUpload->getDesiredDestName(),
'url' => $this->mUpload->getUrl(),
diff --git a/includes/user/UserEditTracker.php b/includes/user/UserEditTracker.php
index 757509808cd1..9cd488178699 100644
--- a/includes/user/UserEditTracker.php
+++ b/includes/user/UserEditTracker.php
@@ -3,9 +3,9 @@
namespace MediaWiki\User;
use InvalidArgumentException;
-use JobQueueGroup;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Deferred\UserEditCountUpdate;
+use MediaWiki\JobQueue\JobQueueGroup;
use UserEditCountInitJob;
use Wikimedia\Rdbms\DBAccessObjectUtils;
use Wikimedia\Rdbms\IConnectionProvider;
diff --git a/includes/user/UserGroupManager.php b/includes/user/UserGroupManager.php
index 8fef9a6a5903..ff349ad5173b 100644
--- a/includes/user/UserGroupManager.php
+++ b/includes/user/UserGroupManager.php
@@ -21,12 +21,12 @@
namespace MediaWiki\User;
use InvalidArgumentException;
-use JobQueueGroup;
use LogicException;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\HookContainer\HookRunner;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Logging\ManualLogEntry;
use MediaWiki\MainConfigNames;
use MediaWiki\Parser\Sanitizer;
diff --git a/includes/watchlist/ActivityUpdateJob.php b/includes/watchlist/ActivityUpdateJob.php
index 77a38d102eff..44c76f79fbd3 100644
--- a/includes/watchlist/ActivityUpdateJob.php
+++ b/includes/watchlist/ActivityUpdateJob.php
@@ -21,7 +21,7 @@
namespace MediaWiki\Watchlist;
use InvalidArgumentException;
-use Job;
+use MediaWiki\JobQueue\Job;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\MediaWikiServices;
use MediaWiki\Page\PageReference;
diff --git a/includes/watchlist/ClearUserWatchlistJob.php b/includes/watchlist/ClearUserWatchlistJob.php
index 0bf8836c0398..16a466cedfa5 100644
--- a/includes/watchlist/ClearUserWatchlistJob.php
+++ b/includes/watchlist/ClearUserWatchlistJob.php
@@ -2,8 +2,8 @@
namespace MediaWiki\Watchlist;
-use GenericParameterJob;
-use Job;
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
use MediaWiki\User\UserIdentity;
diff --git a/includes/watchlist/ClearWatchlistNotificationsJob.php b/includes/watchlist/ClearWatchlistNotificationsJob.php
index 5d52d2d52c9d..88ba28a2fdeb 100644
--- a/includes/watchlist/ClearWatchlistNotificationsJob.php
+++ b/includes/watchlist/ClearWatchlistNotificationsJob.php
@@ -20,9 +20,9 @@
namespace MediaWiki\Watchlist;
-use GenericParameterJob;
use InvalidArgumentException;
-use Job;
+use MediaWiki\JobQueue\GenericParameterJob;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MainConfigNames;
use MediaWiki\MediaWikiServices;
diff --git a/includes/watchlist/WatchedItemStore.php b/includes/watchlist/WatchedItemStore.php
index eaa33035df69..dcc87332b1c1 100644
--- a/includes/watchlist/WatchedItemStore.php
+++ b/includes/watchlist/WatchedItemStore.php
@@ -3,12 +3,12 @@
namespace MediaWiki\Watchlist;
use DateInterval;
-use JobQueueGroup;
use LogicException;
use MapCacheLRU;
use MediaWiki\Cache\LinkBatchFactory;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Deferred\DeferredUpdates;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\PageIdentity;
diff --git a/includes/watchlist/WatchlistExpiryJob.php b/includes/watchlist/WatchlistExpiryJob.php
index 6f62a23d626a..7d00b09ae375 100644
--- a/includes/watchlist/WatchlistExpiryJob.php
+++ b/includes/watchlist/WatchlistExpiryJob.php
@@ -2,7 +2,7 @@
namespace MediaWiki\Watchlist;
-use Job;
+use MediaWiki\JobQueue\Job;
use MediaWiki\MediaWikiServices;
/**
diff --git a/maintenance/fixDoubleRedirects.php b/maintenance/fixDoubleRedirects.php
index c2a010d502fe..53fa819cbe97 100644
--- a/maintenance/fixDoubleRedirects.php
+++ b/maintenance/fixDoubleRedirects.php
@@ -25,6 +25,7 @@
* @ingroup Maintenance
*/
+use MediaWiki\JobQueue\Jobs\DoubleRedirectJob;
use MediaWiki\Maintenance\Maintenance;
use MediaWiki\Title\Title;
diff --git a/tests/phpunit/includes/SiteStats/SiteStatsTest.php b/tests/phpunit/includes/SiteStats/SiteStatsTest.php
index 8ade66959a7e..4fed11a752a6 100644
--- a/tests/phpunit/includes/SiteStats/SiteStatsTest.php
+++ b/tests/phpunit/includes/SiteStats/SiteStatsTest.php
@@ -1,5 +1,6 @@
<?php
+use MediaWiki\JobQueue\Jobs\NullJob;
use MediaWiki\SiteStats\SiteStats;
use Wikimedia\ObjectCache\HashBagOStuff;
use Wikimedia\ObjectCache\WANObjectCache;
diff --git a/tests/phpunit/includes/Storage/DerivedPageDataUpdaterTest.php b/tests/phpunit/includes/Storage/DerivedPageDataUpdaterTest.php
index 2338bf3ed8de..e516f7cfdcce 100644
--- a/tests/phpunit/includes/Storage/DerivedPageDataUpdaterTest.php
+++ b/tests/phpunit/includes/Storage/DerivedPageDataUpdaterTest.php
@@ -1491,7 +1491,7 @@ class DerivedPageDataUpdaterTest extends MediaWikiIntegrationTestCase {
/**
* @covers \MediaWiki\Storage\DerivedPageDataUpdater::doParserCacheUpdate()
- * @covers \ParsoidCachePrewarmJob::doParsoidCacheUpdate()
+ * @covers \MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob::doParsoidCacheUpdate()
*/
public function testDoParserCacheUpdate() {
$this->overrideConfigValue(
@@ -1588,7 +1588,7 @@ class DerivedPageDataUpdaterTest extends MediaWikiIntegrationTestCase {
/**
* @covers \MediaWiki\Storage\DerivedPageDataUpdater::doParserCacheUpdate()
- * @covers \ParsoidCachePrewarmJob::doParsoidCacheUpdate()
+ * @covers \MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob::doParsoidCacheUpdate()
*/
public function testDoParserCacheUpdateForJavaScriptContent() {
$this->overrideConfigValue(
diff --git a/tests/phpunit/includes/jobqueue/JobFactoryTest.php b/tests/phpunit/includes/jobqueue/JobFactoryTest.php
index 6a62fdfb3d20..cf6c01d78db7 100644
--- a/tests/phpunit/includes/jobqueue/JobFactoryTest.php
+++ b/tests/phpunit/includes/jobqueue/JobFactoryTest.php
@@ -1,6 +1,8 @@
<?php
use MediaWiki\JobQueue\JobFactory;
+use MediaWiki\JobQueue\Jobs\NullJob;
+use MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob;
use MediaWiki\Title\Title;
/**
diff --git a/tests/phpunit/includes/jobqueue/JobQueueMemoryTest.php b/tests/phpunit/includes/jobqueue/JobQueueMemoryTest.php
index 6786eb2e2e4e..80b75d586fe9 100644
--- a/tests/phpunit/includes/jobqueue/JobQueueMemoryTest.php
+++ b/tests/phpunit/includes/jobqueue/JobQueueMemoryTest.php
@@ -1,11 +1,15 @@
<?php
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\JobQueue;
+use MediaWiki\JobQueue\JobQueueMemory;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\MediaWikiServices;
use MediaWiki\Title\Title;
use MediaWiki\WikiMap\WikiMap;
/**
- * @covers \JobQueueMemory
+ * @covers \MediaWiki\JobQueue\JobQueueMemory
*
* @group JobQueue
*
diff --git a/tests/phpunit/includes/jobqueue/JobQueueTest.php b/tests/phpunit/includes/jobqueue/JobQueueTest.php
index 7f89d49ad6fc..00affd866a19 100644
--- a/tests/phpunit/includes/jobqueue/JobQueueTest.php
+++ b/tests/phpunit/includes/jobqueue/JobQueueTest.php
@@ -1,5 +1,10 @@
<?php
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\JobQueue;
+use MediaWiki\JobQueue\JobQueueDB;
+use MediaWiki\JobQueue\Jobs\DuplicateJob;
+use MediaWiki\JobQueue\Jobs\NullJob;
use MediaWiki\MediaWikiServices;
use MediaWiki\WikiMap\WikiMap;
use Wikimedia\ObjectCache\HashBagOStuff;
@@ -9,7 +14,7 @@ use Wikimedia\ObjectCache\WANObjectCache;
* @group JobQueue
* @group medium
* @group Database
- * @covers \JobQueue
+ * @covers \MediaWiki\JobQueue\JobQueue
*/
class JobQueueTest extends MediaWikiIntegrationTestCase {
protected ?JobQueue $queueRand;
diff --git a/tests/phpunit/includes/jobqueue/JobRunnerTest.php b/tests/phpunit/includes/jobqueue/JobRunnerTest.php
index 2d1334fd8319..9e98a22cb4a7 100644
--- a/tests/phpunit/includes/jobqueue/JobRunnerTest.php
+++ b/tests/phpunit/includes/jobqueue/JobRunnerTest.php
@@ -1,12 +1,14 @@
<?php
+use MediaWiki\JobQueue\JobRunner;
+use MediaWiki\JobQueue\Jobs\DeletePageJob;
use MediaWiki\Page\DeletePage;
use MediaWiki\Request\WebRequest;
use MediaWiki\Title\Title;
/**
* @group Database
- * @covers \JobRunner
+ * @covers \MediaWiki\JobQueue\JobRunner
*/
class JobRunnerTest extends MediaWikiIntegrationTestCase {
diff --git a/tests/phpunit/includes/jobqueue/JobTest.php b/tests/phpunit/includes/jobqueue/JobTest.php
index ba8ff124d03b..deee97bf8eb6 100644
--- a/tests/phpunit/includes/jobqueue/JobTest.php
+++ b/tests/phpunit/includes/jobqueue/JobTest.php
@@ -1,12 +1,17 @@
<?php
+use MediaWiki\JobQueue\IJobSpecification;
+use MediaWiki\JobQueue\Job;
+use MediaWiki\JobQueue\Jobs\NullJob;
+use MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob;
+use MediaWiki\JobQueue\Jobs\RefreshLinksJob;
use MediaWiki\MainConfigNames;
use MediaWiki\Request\WebRequest;
use MediaWiki\Title\Title;
/**
* @author Addshore
- * @covers \Job
+ * @covers \MediaWiki\JobQueue\Job
*/
class JobTest extends MediaWikiIntegrationTestCase {
diff --git a/tests/phpunit/includes/jobqueue/RefreshLinksPartitionTest.php b/tests/phpunit/includes/jobqueue/RefreshLinksPartitionTest.php
index c7fb9d77bef1..9ca8a6653b75 100644
--- a/tests/phpunit/includes/jobqueue/RefreshLinksPartitionTest.php
+++ b/tests/phpunit/includes/jobqueue/RefreshLinksPartitionTest.php
@@ -1,5 +1,7 @@
<?php
+use MediaWiki\JobQueue\Jobs\RefreshLinksJob;
+use MediaWiki\JobQueue\Utils\BacklinkJobUtils;
use MediaWiki\Title\Title;
/**
@@ -11,7 +13,7 @@ class RefreshLinksPartitionTest extends MediaWikiIntegrationTestCase {
/**
* @dataProvider provideBacklinks
- * @covers \BacklinkJobUtils
+ * @covers \MediaWiki\JobQueue\Utils\BacklinkJobUtils
*/
public function testRefreshLinks( $ns, $dbKey, $pages ) {
$title = Title::makeTitle( $ns, $dbKey );
diff --git a/tests/phpunit/includes/jobqueue/jobs/CategoryMembershipChangeJobTest.php b/tests/phpunit/includes/jobqueue/jobs/CategoryMembershipChangeJobTest.php
index e244f275707d..b1d8abaa3929 100644
--- a/tests/phpunit/includes/jobqueue/jobs/CategoryMembershipChangeJobTest.php
+++ b/tests/phpunit/includes/jobqueue/jobs/CategoryMembershipChangeJobTest.php
@@ -1,12 +1,13 @@
<?php
+use MediaWiki\JobQueue\Jobs\CategoryMembershipChangeJob;
use MediaWiki\MainConfigNames;
use MediaWiki\Revision\RevisionRecord;
use MediaWiki\Title\Title;
use MediaWiki\Utils\MWTimestamp;
/**
- * @covers \CategoryMembershipChangeJob
+ * @covers \MediaWiki\JobQueue\Jobs\CategoryMembershipChangeJob
*
* @group JobQueue
* @group Database
diff --git a/tests/phpunit/includes/jobqueue/jobs/ParsoidCachePrewarmJobTest.php b/tests/phpunit/includes/jobqueue/jobs/ParsoidCachePrewarmJobTest.php
index ca0097e38b6b..00a6594c1d8a 100644
--- a/tests/phpunit/includes/jobqueue/jobs/ParsoidCachePrewarmJobTest.php
+++ b/tests/phpunit/includes/jobqueue/jobs/ParsoidCachePrewarmJobTest.php
@@ -1,6 +1,7 @@
<?php
use MediaWiki\Config\ServiceOptions;
+use MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob;
use MediaWiki\MediaWikiServices;
use MediaWiki\OutputTransform\Stages\RenderDebugInfo;
use MediaWiki\Page\PageIdentity;
@@ -35,9 +36,9 @@ class ParsoidCachePrewarmJobTest extends MediaWikiIntegrationTestCase {
}
/**
- * @covers \ParsoidCachePrewarmJob::doParsoidCacheUpdate
- * @covers \ParsoidCachePrewarmJob::newSpec
- * @covers \ParsoidCachePrewarmJob::run
+ * @covers \MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob::doParsoidCacheUpdate
+ * @covers \MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob::newSpec
+ * @covers \MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob::run
*/
public function testRun() {
$page = $this->getExistingTestPage( 'ParsoidPrewarmJob' )->toPageRecord();
@@ -122,7 +123,7 @@ class ParsoidCachePrewarmJobTest extends MediaWikiIntegrationTestCase {
}
/**
- * @covers \ParsoidCachePrewarmJob::newSpec
+ * @covers \MediaWiki\JobQueue\Jobs\ParsoidCachePrewarmJob::newSpec
*/
public function testEnqueueSpec() {
$page = $this->getExistingTestPage( 'ParsoidPrewarmJob' )->toPageRecord();
diff --git a/tests/phpunit/includes/jobqueue/jobs/RefreshLinksJobTest.php b/tests/phpunit/includes/jobqueue/jobs/RefreshLinksJobTest.php
index a4b8ad57bbf6..84e4cc63c1d6 100644
--- a/tests/phpunit/includes/jobqueue/jobs/RefreshLinksJobTest.php
+++ b/tests/phpunit/includes/jobqueue/jobs/RefreshLinksJobTest.php
@@ -3,13 +3,14 @@
use MediaWiki\CommentStore\CommentStoreComment;
use MediaWiki\Content\Content;
use MediaWiki\Content\WikitextContent;
+use MediaWiki\JobQueue\Jobs\RefreshLinksJob;
use MediaWiki\Page\PageAssertionException;
use MediaWiki\Title\Title;
use Wikimedia\Rdbms\Platform\ISQLPlatform;
use Wikimedia\Stats\StatsFactory;
/**
- * @covers \RefreshLinksJob
+ * @covers \MediaWiki\JobQueue\Jobs\RefreshLinksJob
*
* @group JobQueue
* @group Database
diff --git a/tests/phpunit/integration/includes/Storage/RevertedTagUpdateIntegrationTest.php b/tests/phpunit/integration/includes/Storage/RevertedTagUpdateIntegrationTest.php
index ff2e6f5f6f64..fad2b90104ef 100644
--- a/tests/phpunit/integration/includes/Storage/RevertedTagUpdateIntegrationTest.php
+++ b/tests/phpunit/integration/includes/Storage/RevertedTagUpdateIntegrationTest.php
@@ -5,13 +5,13 @@ namespace MediaWiki\Tests\Storage;
use MediaWiki\Deferred\DeferredUpdates;
use MediaWiki\Json\FormatJson;
use MediaWiki\MainConfigNames;
+use MediaWiki\RecentChanges\RecentChange;
use MediaWikiIntegrationTestCase;
-use RecentChange;
use WikiPage;
/**
* @covers \MediaWiki\Storage\RevertedTagUpdate
- * @covers \RevertedTagUpdateJob
+ * @covers \MediaWiki\JobQueue\Jobs\RevertedTagUpdateJob
* @covers \MediaWiki\Storage\RevertedTagUpdateManager
*
* @group Database
diff --git a/tests/phpunit/integration/includes/jobqueue/JobQueueDBTest.php b/tests/phpunit/integration/includes/jobqueue/JobQueueDBTest.php
index 3d1f5006a3ec..8a9967bd5911 100644
--- a/tests/phpunit/integration/includes/jobqueue/JobQueueDBTest.php
+++ b/tests/phpunit/integration/includes/jobqueue/JobQueueDBTest.php
@@ -2,9 +2,9 @@
namespace MediaWiki\Tests\Integration\JobQueue;
-use JobQueue;
-use JobQueueDB;
-use JobSpecification;
+use MediaWiki\JobQueue\JobQueue;
+use MediaWiki\JobQueue\JobQueueDB;
+use MediaWiki\JobQueue\JobSpecification;
use MediaWiki\Title\Title;
use MediaWiki\WikiMap\WikiMap;
use MediaWikiIntegrationTestCase;
@@ -13,7 +13,7 @@ use Psr\Log\LoggerInterface;
use Psr\Log\NullLogger;
/**
- * @covers JobQueueDB
+ * @covers \MediaWiki\JobQueue\JobQueueDB
* @group JobQueue
* @group Database
*/
diff --git a/tests/phpunit/integration/includes/page/RollbackPageTest.php b/tests/phpunit/integration/includes/page/RollbackPageTest.php
index 7d3de17e7278..bd23488f1317 100644
--- a/tests/phpunit/integration/includes/page/RollbackPageTest.php
+++ b/tests/phpunit/integration/includes/page/RollbackPageTest.php
@@ -15,6 +15,7 @@ use MediaWiki\Page\PageIdentityValue;
use MediaWiki\Page\ProperPageIdentity;
use MediaWiki\Page\RollbackPage;
use MediaWiki\Permissions\Authority;
+use MediaWiki\RecentChanges\RecentChange;
use MediaWiki\Revision\SlotRecord;
use MediaWiki\Storage\EditResult;
use MediaWiki\Tests\ExpectCallbackTrait;
@@ -31,7 +32,6 @@ use MediaWiki\User\UserFactory;
use MediaWiki\User\UserIdentityValue;
use MediaWikiIntegrationTestCase;
use PHPUnit\Framework\Assert;
-use RecentChange;
use Wikimedia\Rdbms\ReadOnlyMode;
use WikiPage;
diff --git a/tests/phpunit/maintenance/FixDoubleRedirectsTest.php b/tests/phpunit/maintenance/FixDoubleRedirectsTest.php
index bc9df7b06fb4..b2cf6104a1a3 100644
--- a/tests/phpunit/maintenance/FixDoubleRedirectsTest.php
+++ b/tests/phpunit/maintenance/FixDoubleRedirectsTest.php
@@ -7,7 +7,7 @@ use MediaWiki\Title\Title;
/**
* @covers \FixDoubleRedirects
- * @covers \DoubleRedirectJob
+ * @covers \MediaWiki\JobQueue\Jobs\DoubleRedirectJob
* @group Database
* @author Dreamy Jazz
*/
diff --git a/tests/phpunit/maintenance/GetConfigurationTest.php b/tests/phpunit/maintenance/GetConfigurationTest.php
index ea617204bdeb..df0a0c59de3b 100644
--- a/tests/phpunit/maintenance/GetConfigurationTest.php
+++ b/tests/phpunit/maintenance/GetConfigurationTest.php
@@ -3,9 +3,9 @@
namespace MediaWiki\Tests\Maintenance;
use GetConfiguration;
+use MediaWiki\JobQueue\Jobs\NullJob;
use MediaWiki\Json\FormatJson;
use MediaWiki\MainConfigNames;
-use NullJob;
/**
* @covers \GetConfiguration
diff --git a/tests/phpunit/maintenance/ManageJobsTest.php b/tests/phpunit/maintenance/ManageJobsTest.php
index 7f3e0541d901..817ed7f2ad86 100644
--- a/tests/phpunit/maintenance/ManageJobsTest.php
+++ b/tests/phpunit/maintenance/ManageJobsTest.php
@@ -3,7 +3,7 @@
namespace MediaWiki\Tests\Maintenance;
use ManageJobs;
-use NullJob;
+use MediaWiki\JobQueue\Jobs\NullJob;
/**
* @covers \ManageJobs
diff --git a/tests/phpunit/maintenance/RunJobsTest.php b/tests/phpunit/maintenance/RunJobsTest.php
index 3c37c4816506..b9e142f1ff74 100644
--- a/tests/phpunit/maintenance/RunJobsTest.php
+++ b/tests/phpunit/maintenance/RunJobsTest.php
@@ -2,8 +2,8 @@
namespace MediaWiki\Tests\Maintenance;
+use MediaWiki\JobQueue\Jobs\NullJob;
use MediaWiki\Json\FormatJson;
-use NullJob;
use RunJobs;
/**
diff --git a/tests/phpunit/maintenance/ShowJobsTest.php b/tests/phpunit/maintenance/ShowJobsTest.php
index 49530d8983db..2b58b7de641d 100644
--- a/tests/phpunit/maintenance/ShowJobsTest.php
+++ b/tests/phpunit/maintenance/ShowJobsTest.php
@@ -3,7 +3,7 @@
namespace MediaWiki\Tests\Maintenance;
use MediaWiki\Http\Telemetry;
-use NullJob;
+use MediaWiki\JobQueue\Jobs\NullJob;
use ShowJobs;
/**
diff --git a/tests/phpunit/unit/includes/Storage/RevertedTagUpdateManagerTest.php b/tests/phpunit/unit/includes/Storage/RevertedTagUpdateManagerTest.php
index 87cecff11f3e..c1834ffd3a56 100644
--- a/tests/phpunit/unit/includes/Storage/RevertedTagUpdateManagerTest.php
+++ b/tests/phpunit/unit/includes/Storage/RevertedTagUpdateManagerTest.php
@@ -2,7 +2,7 @@
namespace MediaWiki\Tests\Storage;
-use JobQueueGroup;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Storage\EditResult;
use MediaWiki\Storage\EditResultCache;
use MediaWiki\Storage\RevertedTagUpdateManager;
diff --git a/tests/phpunit/unit/includes/jobqueue/JobSpecificationTest.php b/tests/phpunit/unit/includes/jobqueue/JobSpecificationTest.php
index 9489a8936e42..11f43963779c 100644
--- a/tests/phpunit/unit/includes/jobqueue/JobSpecificationTest.php
+++ b/tests/phpunit/unit/includes/jobqueue/JobSpecificationTest.php
@@ -1,14 +1,16 @@
<?php
+use MediaWiki\JobQueue\JobSpecification;
+
/**
- * @covers \JobSpecification
+ * @covers \MediaWiki\JobQueue\JobSpecification
*/
class JobSpecificationTest extends MediaWikiUnitTestCase {
private const JOB_TYPE = 'testJob';
private const JOB_PARAMS = [ 'param' => 'value' ];
/**
- * @covers \JobSpecification::ignoreDuplicates
+ * @covers \MediaWiki\JobQueue\JobSpecification::ignoreDuplicates
*/
public function testNotRemoveDuplicates() {
$jobSpec = new JobSpecification(
@@ -20,7 +22,7 @@ class JobSpecificationTest extends MediaWikiUnitTestCase {
}
/**
- * @covers \JobSpecification::ignoreDuplicates
+ * @covers \MediaWiki\JobQueue\JobSpecification::ignoreDuplicates
*/
public function testRemoveDuplicates() {
$jobSpec = new JobSpecification(
@@ -33,7 +35,7 @@ class JobSpecificationTest extends MediaWikiUnitTestCase {
}
/**
- * @covers \JobSpecification::getDeduplicationInfo
+ * @covers \MediaWiki\JobQueue\JobSpecification::getDeduplicationInfo
*/
public function testGetDeduplicationInfo() {
$jobSpec = new JobSpecification(
@@ -48,7 +50,7 @@ class JobSpecificationTest extends MediaWikiUnitTestCase {
}
/**
- * @covers \JobSpecification::getDeduplicationInfo
+ * @covers \MediaWiki\JobQueue\JobSpecification::getDeduplicationInfo
*/
public function testGetDeduplicationInfo_ignoreParams() {
$jobSpec = new JobSpecification(
diff --git a/tests/phpunit/unit/includes/page/DeletePageTest.php b/tests/phpunit/unit/includes/page/DeletePageTest.php
index 05b3a40a371a..006d964adf43 100644
--- a/tests/phpunit/unit/includes/page/DeletePageTest.php
+++ b/tests/phpunit/unit/includes/page/DeletePageTest.php
@@ -4,10 +4,10 @@ namespace MediaWiki\Tests\Unit\Page;
use BadMethodCallException;
use Generator;
-use JobQueueGroup;
use MediaWiki\Cache\BacklinkCacheFactory;
use MediaWiki\CommentStore\CommentStore;
use MediaWiki\Config\ServiceOptions;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\MainConfigNames;
use MediaWiki\Page\DeletePage;
diff --git a/tests/phpunit/unit/includes/page/UndeletePageTest.php b/tests/phpunit/unit/includes/page/UndeletePageTest.php
index ead7f8429b66..8c582373bf41 100644
--- a/tests/phpunit/unit/includes/page/UndeletePageTest.php
+++ b/tests/phpunit/unit/includes/page/UndeletePageTest.php
@@ -3,10 +3,10 @@
namespace MediaWiki\Tests\Unit\Page;
use Generator;
-use JobQueueGroup;
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Content\IContentHandlerFactory;
use MediaWiki\FileRepo\RepoGroup;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\Page\PageIdentity;
use MediaWiki\Page\PageIdentityValue;
diff --git a/tests/phpunit/unit/includes/user/UserGroupManagerFactoryTest.php b/tests/phpunit/unit/includes/user/UserGroupManagerFactoryTest.php
index 802fe355b8dc..befd185fd7c4 100644
--- a/tests/phpunit/unit/includes/user/UserGroupManagerFactoryTest.php
+++ b/tests/phpunit/unit/includes/user/UserGroupManagerFactoryTest.php
@@ -3,7 +3,7 @@
namespace MediaWiki\Tests\User;
use FactoryArgTestTrait;
-use JobQueueGroup;
+use MediaWiki\JobQueue\JobQueueGroup;
use MediaWiki\JobQueue\JobQueueGroupFactory;
use MediaWiki\User\UserGroupManager;
use MediaWiki\User\UserGroupManagerFactory;