Page MenuHomePhabricator

WikibaseRepo + WikibaseClient: Remove SingleEntitySourceServicesFactory Service
Closed, ResolvedPublic

Description

As part of the wikibase service migration a temporary factory class to generate instances of SingleEntitySourceServices was created in order to mitigate the usage of such services in prefetching callback definitions.

Once the services used in these callbacks are migrated into WikibaseClient.ServiceWiring and WikibaseRepo.ServiceWiring, this factory service is no longer needed, and can be removed. These services are:

  • getTermInLangIdsResolver (T281341)
  • getEntityRevisionLookup (T281342)

See child tasks for more information.

Depends on T277858: Stop Passing an instance of SingleEntitySourceServices into PrefetchingTermLookup callbacks

NOTE: This is a prerequisite for completely migrating all services to the service container and removing DataAccessServices, WikibaseServices, MultipleEntitySourceServices and SingleEntitySourceServices.

Event Timeline

ItamarWMDE renamed this task from Remove `WikibaseRepo.SingleEntitySourceServiceFactory` Service to WikibaseRepo: Remove SingleEntitySourceServiceFactory Service.Mar 18 2021, 9:14 AM
ItamarWMDE renamed this task from WikibaseRepo: Remove SingleEntitySourceServiceFactory Service to WikibaseRepo + WikibaseClient: Remove SingleEntitySourceServiceFactory Service.Apr 28 2021, 9:42 AM
Lucas_Werkmeister_WMDE renamed this task from WikibaseRepo + WikibaseClient: Remove SingleEntitySourceServiceFactory Service to WikibaseRepo + WikibaseClient: Remove SingleEntitySourceServicesFactory Service.May 3 2021, 4:12 PM
Lucas_Werkmeister_WMDE updated the task description. (Show Details)

Change 814147 had a related patch set uploaded (by Lucas Werkmeister (WMDE); author: Lucas Werkmeister (WMDE)):

[mediawiki/extensions/Wikibase@master] Stop using SingleEntitySourceServicesFactory for term lookups

https://gerrit.wikimedia.org/r/814147

Change 814149 had a related patch set uploaded (by Lucas Werkmeister (WMDE); author: Lucas Werkmeister (WMDE)):

[mediawiki/extensions/WikibaseMediaInfo@master] Stop using SingleEntitySourceServicesFactory for term lookups

https://gerrit.wikimedia.org/r/814149

Change 814150 had a related patch set uploaded (by Lucas Werkmeister (WMDE); author: Lucas Werkmeister (WMDE)):

[mediawiki/extensions/Wikibase@master] Remove SingleEntitySourceServicesFactory from service container

https://gerrit.wikimedia.org/r/814150

Change 814147 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] Stop using SingleEntitySourceServicesFactory for term lookups

https://gerrit.wikimedia.org/r/814147

Change 814149 merged by jenkins-bot:

[mediawiki/extensions/WikibaseMediaInfo@master] Stop using SingleEntitySourceServicesFactory for term lookups

https://gerrit.wikimedia.org/r/814149

Change 814150 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] Remove SingleEntitySourceServicesFactory from service container

https://gerrit.wikimedia.org/r/814150

This is done, if we strictly interpret the task to mean removing the factory from the service container. The factory itself still exists, but it is no longer available as a service of its own; it’s only used inside the service wiring of the WikibaseServices service. If we later want to remove that service, we can do whatever we want with SingleEntitySourceServicesFactory (moving the code around as needed), since it’s already no longer used anywhere else.

(The EntityRevisionLookup subtask T281342 is currently still open, but only to track a follow-up patch in the Math extension. Oherwise, that task is done as well, in that EntityRevisionLookup is now in the service container for repo and client.)