Page MenuHomePhabricator

Wikidata RCFilters integration causes error on Recentchanges
Closed, ResolvedPublic

Description

https://en.wikipedia.beta.wmflabs.org/wiki/Special:RecentChanges shows

[WNP6lQpEE4AAAGFTkFAAAAAK] /wiki/Special:RecentChanges MWException from line 257 of /srv/mediawiki/php-master/includes/changes/ChangesListFilter.php: You can only pass in a ChangesListFilterGroup or a ChangesListFilter

Backtrace:

#0 /srv/mediawiki/php-master/includes/changes/ChangesListFilter.php(219): ChangesListFilter->setUnidirectionalConflict(NULL, string, string)
#1 /srv/mediawiki/php-master/extensions/Wikidata/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageHookHandlers.php(241): ChangesListFilter->conflictsWith(NULL, string, string, string)
#2 /srv/mediawiki/php-master/extensions/Wikidata/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageHookHandlers.php(200): Wikibase\Client\Hooks\ChangesListSpecialPageHookHandlers->addFilter(SpecialRecentChanges)
#3 /srv/mediawiki/php-master/extensions/Wikidata/extensions/Wikibase/client/includes/Hooks/ChangesListSpecialPageHookHandlers.php(133): Wikibase\Client\Hooks\ChangesListSpecialPageHookHandlers->addFilterIfEnabled(SpecialRecentChanges)
#4 /srv/mediawiki/php-master/includes/Hooks.php(186): Wikibase\Client\Hooks\ChangesListSpecialPageHookHandlers::onChangesListSpecialPageStructuredFilters(SpecialRecentChanges)
#5 /srv/mediawiki/php-master/includes/specialpage/ChangesListSpecialPage.php(512): Hooks::run(string, array)
#6 /srv/mediawiki/php-master/includes/specials/SpecialRecentchanges.php(110): ChangesListSpecialPage->registerFilters()
[...]

It looks like the NULL being passed into conflictsWith() comes from $damagingGroup = $specialPage->getFilterGroup( 'damaging' );. So our hack for making sure the Wikidata hook runs after the ORES hook doesn't seem to work on beta. (It did work for me locally.)

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Change 344450 had a related patch set uploaded (by Catrope):
[mediawiki/extensions/Wikibase@master] Follow-up 4769299ef: only register conflicts with ORES filters if they exist

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

Change 344450 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Follow-up 4769299ef: only register conflicts with ORES filters if they exist

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

Change 344559 had a related patch set uploaded (by Catrope):
[mediawiki/extensions/Wikibase@wmf/1.29.0-wmf.17] Follow-up 4769299ef: only register conflicts with ORES filters if they exist

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

Change 344559 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@wmf/1.29.0-wmf.17] Follow-up 4769299ef: only register conflicts with ORES filters if they exist

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

RC page is fixed - no Internal error page is displayed.