Steps to replicate the issue (include links if applicable):
Try to delete a newsletter
What happens?:
MediaWiki internal error. Original exception: [fc3f42bfea06a86e7af0b4a4] /w/index.php?title=Newsletter:H&action=delete Error: Call to a member function canManage() on null Backtrace: from /vagrant/mediawiki/extensions/Newsletter/includes/Hooks.php(408) #0 /vagrant/mediawiki/includes/HookContainer/HookContainer.php(153): MediaWiki\Extension\Newsletter\Hooks::onGetUserPermissionsErrors() #1 /vagrant/mediawiki/includes/HookContainer/HookRunner.php(1986): MediaWiki\HookContainer\HookContainer->run() #2 /vagrant/mediawiki/includes/Permissions/PermissionManager.php(584): MediaWiki\HookContainer\HookRunner->onGetUserPermissionsErrors() #3 /vagrant/mediawiki/includes/Permissions/PermissionManager.php(539): MediaWiki\Permissions\PermissionManager->checkPermissionHooks() #4 /vagrant/mediawiki/includes/Permissions/PermissionManager.php(301): MediaWiki\Permissions\PermissionManager->getPermissionErrorsInternal() #5 /vagrant/mediawiki/includes/Permissions/UserAuthority.php(291): MediaWiki\Permissions\PermissionManager->userCan() #6 /vagrant/mediawiki/includes/Permissions/UserAuthority.php(158): MediaWiki\Permissions\UserAuthority->internalCan() #7 /vagrant/mediawiki/includes/user/User.php(3477): MediaWiki\Permissions\UserAuthority->probablyCan() #8 /vagrant/mediawiki/includes/skins/SkinTemplate.php(1125): User->probablyCan() #9 /vagrant/mediawiki/includes/skins/SkinTemplate.php(609): SkinTemplate->buildContentNavigationUrlsInternal() #10 /vagrant/mediawiki/includes/skins/SkinTemplate.php(180): SkinTemplate->getPortletsTemplateData() #11 /vagrant/mediawiki/includes/skins/SkinMustache.php(128): SkinTemplate->getTemplateData() #12 /vagrant/mediawiki/skins/Vector/includes/SkinVectorLegacy.php(161): SkinMustache->getTemplateData() #13 /vagrant/mediawiki/includes/skins/SkinMustache.php(95): MediaWiki\Skins\Vector\SkinVectorLegacy->getTemplateData() #14 /vagrant/mediawiki/includes/skins/SkinTemplate.php(173): SkinMustache->generateHTML() #15 /vagrant/mediawiki/includes/OutputPage.php(2929): SkinTemplate->outputPage() #16 /vagrant/mediawiki/includes/MediaWiki.php(945): OutputPage->output() #17 /vagrant/mediawiki/includes/MediaWiki.php(581): MediaWiki->main() #18 /vagrant/mediawiki/index.php(50): MediaWiki->run() #19 /vagrant/mediawiki/index.php(46): wfIndexMain() #20 /var/www/w/index.php(5): require(string) #21 {main} Exception caught inside exception handler: [fc3f42bfea06a86e7af0b4a4] /w/index.php?title=Newsletter:H&action=delete Error: Call to a member function canManage() on null Backtrace: from /vagrant/mediawiki/extensions/Newsletter/includes/Hooks.php(408) #0 /vagrant/mediawiki/includes/HookContainer/HookContainer.php(153): MediaWiki\Extension\Newsletter\Hooks::onGetUserPermissionsErrors() #1 /vagrant/mediawiki/includes/HookContainer/HookRunner.php(1986): MediaWiki\HookContainer\HookContainer->run() #2 /vagrant/mediawiki/includes/Permissions/PermissionManager.php(584): MediaWiki\HookContainer\HookRunner->onGetUserPermissionsErrors() #3 /vagrant/mediawiki/includes/Permissions/PermissionManager.php(539): MediaWiki\Permissions\PermissionManager->checkPermissionHooks() #4 /vagrant/mediawiki/includes/Permissions/PermissionManager.php(301): MediaWiki\Permissions\PermissionManager->getPermissionErrorsInternal() #5 /vagrant/mediawiki/includes/Permissions/UserAuthority.php(291): MediaWiki\Permissions\PermissionManager->userCan() #6 /vagrant/mediawiki/includes/Permissions/UserAuthority.php(158): MediaWiki\Permissions\UserAuthority->internalCan() #7 /vagrant/mediawiki/includes/user/User.php(3477): MediaWiki\Permissions\UserAuthority->probablyCan() #8 /vagrant/mediawiki/includes/skins/SkinTemplate.php(1125): User->probablyCan() #9 /vagrant/mediawiki/includes/skins/SkinTemplate.php(609): SkinTemplate->buildContentNavigationUrlsInternal() #10 /vagrant/mediawiki/includes/skins/SkinTemplate.php(180): SkinTemplate->getPortletsTemplateData() #11 /vagrant/mediawiki/includes/skins/SkinMustache.php(128): SkinTemplate->getTemplateData() #12 /vagrant/mediawiki/skins/Vector/includes/SkinVectorLegacy.php(161): SkinMustache->getTemplateData() #13 /vagrant/mediawiki/includes/skins/SkinMustache.php(95): MediaWiki\Skins\Vector\SkinVectorLegacy->getTemplateData() #14 /vagrant/mediawiki/includes/skins/SkinTemplate.php(173): SkinMustache->generateHTML() #15 /vagrant/mediawiki/includes/OutputPage.php(2929): SkinTemplate->outputPage() #16 /vagrant/mediawiki/includes/exception/MWExceptionRenderer.php(185): OutputPage->output() #17 /vagrant/mediawiki/includes/exception/MWExceptionRenderer.php(103): MWExceptionRenderer::reportHTML() #18 /vagrant/mediawiki/includes/exception/MWExceptionHandler.php(133): MWExceptionRenderer::output() #19 /vagrant/mediawiki/includes/exception/MWExceptionHandler.php(250): MWExceptionHandler::report() #20 /vagrant/mediawiki/includes/MediaWiki.php(603): MWExceptionHandler::handleException() #21 /vagrant/mediawiki/index.php(50): MediaWiki->run() #22 /vagrant/mediawiki/index.php(46): wfIndexMain() #23 /var/www/w/index.php(5): require(string) #24 {main}
The newsletter is marked as deleted in the newsletter table but not the standard page table.
What should have happened instead?:
The deletion worked.
Software version (skip for WMF-hosted wikis like Wikipedia):
Latest version from git
This was broken in a slightly less ugly way but with the same consequences before my recent patches.