indieweb / indieweb/wiki

"MediaWiki internal error" when trying to login

Open
#53 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
30
Forks
8
PR merge metrics
No merged PRs in 30d

Description

I was trying to login `https://indieweb.org/` with my Github Page (where my blog site deployed).
After I enter the email code and hit enter, I got a bunch of plain text and there's no error from console:

![Image](https://github.com/user-attachments/assets/71e31807-65bf-4ddb-9c68-8684dfab5d26)

--- ---

## So I need to clear cookies, then access `https://indieweb.org/`
![Image](https://github.com/user-attachments/assets/6f1f81d0-2338-4b79-a043-d797efdd4bea)

**After I hit continue, here we go again:**

--- ---

## Detail
```
MediaWiki internal error.

Original exception: [b247d8d63a5a3fa9447cd3e6] /wiki/index.php?title=Main_Page UnexpectedValueException: Hook handlers can only return null or a boolean. Got an unexpected value from handler *closure#00000000000000130000000000000000* for AuthRemoteuserFilterUserName
Backtrace:
from /web/sites/indieweb.org/public/wiki/includes/HookContainer/HookContainer.php(172)
#0 /web/sites/indieweb.org/public/wiki/includes/Hooks.php(132): MediaWiki\HookContainer\HookContainer->run()
#1 /web/sites/indieweb.org/public/wiki/extensions/Auth_remoteuser/src/UserNameSessionProvider.php(289): Hooks::run()
#2 /web/sites/indieweb.org/public/wiki/includes/session/SessionManager.php(537): MediaWiki\Extension\Auth_remoteuser\UserNameSessionProvider->provideSessionInfo()
#3 /web/sites/indieweb.org/public/wiki/includes/session/SessionManager.php(244): MediaWiki\Session\SessionManager->getSessionInfoForRequest()
#4 /web/sites/indieweb.org/public/wiki/includes/Request/WebRequest.php(840): MediaWiki\Session\SessionManager->getSessionForRequest()
#5 /web/sites/indieweb.org/public/wiki/includes/session/SessionManager.php(165): MediaWiki\Request\WebRequest->getSession()
#6 /web/sites/indieweb.org/public/wiki/includes/Setup.php(486): MediaWiki\Session\SessionManager::getGlobalSession()
#7 /web/sites/indieweb.org/public/wiki/includes/WebStart.php(92): require_once(string)
#8 /web/sites/indieweb.org/public/wiki/index.php(44): require(string)
#9 {main}

Exception caught inside exception handler: [b247d8d63a5a3fa9447cd3e6] /wiki/index.php?title=Main_Page UnexpectedValueException: Hook handlers can only return null or a boolean. Got an unexpected value from handler *closure#00000000000000130000000000000000* for AuthRemoteuserFilterUserName
Backtrace:
from /web/sites/indieweb.org/public/wiki/includes/HookContainer/HookContainer.php(172)
#0 /web/sites/indieweb.org/public/wiki/includes/Hooks.php(132): MediaWiki\HookContainer\HookContainer->run()
#1 /web/sites/indieweb.org/public/wiki/extensions/Auth_remoteuser/src/UserNameSessionProvider.php(289): Hooks::run()
#2 /web/sites/indieweb.org/public/wiki/includes/session/SessionManager.php(537): MediaWiki\Extension\Auth_remoteuser\UserNameSessionProvider->provideSessionInfo()
#3 /web/sites/indieweb.org/public/wiki/includes/session/SessionManager.php(244): MediaWiki\Session\SessionManager->getSessionInfoForRequest()
#4 /web/sites/indieweb.org/public/wiki/includes/Request/WebRequest.php(840): MediaWiki\Session\SessionManager->getSessionForRequest()
#5 /web/sites/indieweb.org/public/wiki/includes/user/User.php(1024): MediaWiki\Request\WebRequest->getSession()
#6 /web/sites/indieweb.org/public/wiki/includes/user/User.php(393): MediaWiki\User\User->loadDefaults()
#7 /web/sites/indieweb.org/public/wiki/includes/user/User.php(1637): MediaWiki\User\User->load()
#8 /web/sites/indieweb.org/public/wiki/includes/user/User.php(2297): MediaWiki\User\User->getId()
#9 /web/sites/indieweb.org/public/wiki/includes/user/UserOptionsManager.php(656): MediaWiki\User\User->isRegistered()
#10 /web/sites/indieweb.org/public/wiki/includes/user/UserOptionsManager.php(500): MediaWiki\User\UserOptionsManager->getCacheKey()
#11 /web/sites/indieweb.org/public/wiki/includes/user/UserOptionsManager.php(147): MediaWiki\User\UserOptionsManager->loadUserOptions()
#12 /web/sites/indieweb.org/public/wiki/includes/context/RequestContext.php(459): MediaWiki\User\UserOptionsManager->getOption()
#13 /web/sites/indieweb.org/public/wiki/includes/language/Message.php(389): RequestContext->getLanguage()
#14 /web/sites/indieweb.org/public/wiki/includes/language/Message.php(1485): Message->getLanguage()
#15 /web/sites/indieweb.org/public/wiki/includes/language/Message.php(972): Message->fetchMessage()
#16 /web/sites/indieweb.org/public/wiki/includes/language/Message.php(1059): Message->format()
#17 /web/sites/indieweb.org/public/wiki/includes/exception/MWExceptionRenderer.php(254): Message->text()
#18 /web/sites/indieweb.org/public/wiki/includes/exception/MWExceptionRenderer.php(191): MWExceptionRenderer::msg()
#19 /web/sites/indieweb.org/public/wiki/includes/exception/MWExceptionRenderer.php(105): MWExceptionRenderer::reportHTML()
#20 /web/sites/indieweb.org/public/wiki/includes/exception/MWExceptionHandler.php(134): MWExceptionRenderer::output()
#21 /web/sites/indieweb.org/public/wiki/includes/exception/MWExceptionHandler.php(251): MWExceptionHandler::report()
#22 /web/sites/indieweb.org/public/wiki/includes/exception/MWExceptionHandler.php(219): MWExceptionHandler::handleException()
#23 [internal function]: MWExceptionHandler::handleUncaughtException()
#24 {main}
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with extensions/Auth_remoteuser/src/UserNameSessionProvider.php at the provideSessionInfo() call shown in the backtrace, then read includes/HookContainer/HookContainer.php around line 172. Reproduce the login flow and trace the AuthRemoteuserFilterUserName hook result. Done means login reaches the wiki without the MediaWiki internal error.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
authentication, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.