Lucas_Werkmeister_WMDE created this task.
Lucas_Werkmeister_WMDE added projects: Wikidata, wdwb-tech, ci-test-error 
(WMF-deployed Build Failure).
Restricted Application added a subscriber: Aklapper.

TASK DESCRIPTION
  In this MediaWiki core change 
<https://gerrit.wikimedia.org/r/c/mediawiki/core/+/923657>, I changed the 
return type of `ConnectionManager::getReadConnection()` from `IDatabase` to 
`IReadableDatabase`. Apparently this broke Phan on Wikibase (example build 
<https://integration.wikimedia.org/ci/job/mwext-php74-phan-docker/47433/console>):
  
  counterexample
    client/includes/Hooks/ChangesListSpecialPageHookHandler.php:61 
PhanTypeMismatchArgumentSuperType Argument 1 ($dbr) is 
$dbFactory->newLocalDb()->connections()->getReadConnection() of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Client\Hooks\ChangesListSpecialPageHookHandler::__construct() 
takes \Wikimedia\Rdbms\IDatabase defined at 
client/includes/Hooks/ChangesListSpecialPageHookHandler.php:45 (expected type 
to be the same or a subtype, but saw a supertype instead)
    client/includes/Usage/Sql/EntityUsageTable.php:408 
PhanTypeMismatchArgumentSuperType Argument 2 ($readConnection) is 
$readConnection of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Client\Usage\Sql\EntityUsageTable::getUsedEntityIdStringsMySql() 
takes \Wikimedia\Rdbms\IDatabase defined at 
client/includes/Usage/Sql/EntityUsageTable.php:465 (expected type to be the 
same or a subtype, but saw a supertype instead)
    client/includes/Usage/Sql/SqlUsageTracker.php:231 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Client\Usage\Sql\SqlUsageTracker::newUsageTable() takes 
\Wikimedia\Rdbms\IDatabase defined at 
client/includes/Usage/Sql/SqlUsageTracker.php:79 (expected type to be the same 
or a subtype, but saw a supertype instead)
    client/includes/Usage/Sql/SqlUsageTracker.php:252 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Client\Usage\Sql\SqlUsageTracker::newUsageTable() takes 
\Wikimedia\Rdbms\IDatabase defined at 
client/includes/Usage/Sql/SqlUsageTracker.php:79 (expected type to be the same 
or a subtype, but saw a supertype instead)
    client/includes/Usage/Sql/SqlUsageTracker.php:272 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Client\Usage\Sql\SqlUsageTracker::newUsageTable() takes 
\Wikimedia\Rdbms\IDatabase defined at 
client/includes/Usage/Sql/SqlUsageTracker.php:79 (expected type to be the same 
or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/EntityChangeLookup.php:57 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\EntityChangeLookup::newEntityChangeSelectQueryBuilder() 
takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/EntityChangeLookup.php:93 (expected type to be the same 
or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/EntityChangeLookup.php:85 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\EntityChangeLookup::newEntityChangeSelectQueryBuilder() 
takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/EntityChangeLookup.php:93 (expected type to be the same 
or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/PropertyInfoTable.php:259 
PhanTypeMismatchReturnSuperType Returning 
$this->db->connections()->getReadConnection() of type 
\Wikimedia\Rdbms\IReadableDatabase but getReadConnection() is declared to 
return \Wikimedia\Rdbms\IDatabase (saw a supertype instead of a subtype)
    lib/includes/Store/Sql/Terms/DatabaseMatchingTermsLookup.php:73 
PhanTypeMismatchArgumentSuperType Argument 1 ($dbr) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\Terms\DatabaseMatchingTermsLookup::criteriaToQueryResults()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/Terms/DatabaseMatchingTermsLookup.php:93 (expected type 
to be the same or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/Terms/DatabaseUsageCheckingTermStoreCleaner.php:48 
PhanTypeMismatchArgumentSuperType Argument 2 ($dbr) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\Terms\DatabaseInnerTermStoreCleaner::cleanTermInLangIds()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/Terms/DatabaseInnerTermStoreCleaner.php:51 (expected 
type to be the same or a subtype, but saw a supertype instead)
    
lib/includes/Store/Sql/Terms/Util/ReplicaMasterAwareRecordIdsAcquirer.php:236 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\Terms\Util\ReplicaMasterAwareRecordIdsAcquirer::findExistingRecords()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/Terms/Util/ReplicaMasterAwareRecordIdsAcquirer.php:268 
(expected type to be the same or a subtype, but saw a supertype instead)
    
lib/includes/Store/Sql/Terms/Util/ReplicaMasterAwareRecordIdsAcquirer.php:246 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\Terms\Util\ReplicaMasterAwareRecordIdsAcquirer::findExistingRecords()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/Terms/Util/ReplicaMasterAwareRecordIdsAcquirer.php:268 
(expected type to be the same or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:91 
PhanTypeMismatchArgumentSuperType Argument 2 ($db) is $dbReplicaRead of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\WikiPageEntityMetaDataLookup::selectRevisionInformationMultiple()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:268 (expected type to 
be the same or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:136 
PhanTypeMismatchArgumentSuperType Argument 3 ($db) is $dbReplicaRead of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\WikiPageEntityMetaDataLookup::selectRevisionInformationById()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:246 (expected type to 
be the same or a subtype, but saw a supertype instead)
    lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:175 
PhanTypeMismatchArgumentSuperType Argument 2 ($db) is $dbReplicaRead of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but 
\Wikibase\Lib\Store\Sql\WikiPageEntityMetaDataLookup::selectLatestRevisionIdsMultiple()
 takes \Wikimedia\Rdbms\IDatabase defined at 
lib/includes/Store/Sql/WikiPageEntityMetaDataLookup.php:290 (expected type to 
be the same or a subtype, but saw a supertype instead)
    repo/includes/Store/Sql/DispatchStats.php:30 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Repo\Store\Sql\DispatchStats::loadLimitedNumberOfChanges() takes 
\Wikimedia\Rdbms\IDatabase defined at 
repo/includes/Store/Sql/DispatchStats.php:49 (expected type to be the same or a 
subtype, but saw a supertype instead)
    repo/includes/Store/Sql/DispatchStats.php:34 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Repo\Store\Sql\DispatchStats::loadChangeTimes() takes 
\Wikimedia\Rdbms\IDatabase defined at 
repo/includes/Store/Sql/DispatchStats.php:74 (expected type to be the same or a 
subtype, but saw a supertype instead)
    repo/includes/Store/Sql/DispatchStats.php:36 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Repo\Store\Sql\DispatchStats::getWbChangesRowEstimate() takes 
\Wikimedia\Rdbms\IDatabase defined at 
repo/includes/Store/Sql/DispatchStats.php:58 (expected type to be the same or a 
subtype, but saw a supertype instead)
    repo/includes/Store/Sql/DispatchStats.php:44 
PhanTypeMismatchArgumentSuperType Argument 1 ($db) is $db of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Repo\Store\Sql\DispatchStats::loadNumberOfEntities() takes 
\Wikimedia\Rdbms\IDatabase defined at 
repo/includes/Store/Sql/DispatchStats.php:66 (expected type to be the same or a 
subtype, but saw a supertype instead)
    repo/includes/Store/Sql/Terms/DatabaseTermsCollisionDetector.php:295 
PhanTypeMismatchReturnSuperType Returning 
$this->db->connections()->getReadConnection() of type 
\Wikimedia\Rdbms\IReadableDatabase but getDbr() is declared to return 
\Wikimedia\Rdbms\IDatabase (saw a supertype instead of a subtype)
    repo/maintenance/pruneItemsPerSite.php:77 PhanTypeMismatchArgumentSuperType 
Argument 1 ($dbr) is $dbr of type 
\Wikimedia\Rdbms\Database\DbQuoter|\Wikimedia\Rdbms\Database\IDatabaseFlags|\Wikimedia\Rdbms\IReadableDatabase|\Wikimedia\Rdbms\Platform\ISQLPlatform|string
 but \Wikibase\Repo\Maintenance\PruneItemsPerSite::selectInRange() takes 
\Wikimedia\Rdbms\IDatabase defined at repo/maintenance/pruneItemsPerSite.php:91 
(expected type to be the same or a subtype, but saw a supertype instead)

TASK DETAIL
  https://phabricator.wikimedia.org/T337717

EMAIL PREFERENCES
  https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: Lucas_Werkmeister_WMDE
Cc: Lucas_Werkmeister_WMDE, Aklapper, Astuthiodit_1, karapayneWMDE, Invadibot, 
maantietaja, ItamarWMDE, Akuckartz, Nandana, Lahi, Gq86, GoranSMilovanovic, 
QZanden, LawExplorer, _jensen, rosalieper, Scott_WUaS, Wikidata-bugs, aude, 
Jdforrester-WMF, Mbch331
_______________________________________________
Wikidata-bugs mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to