XZise added a comment.
Okay it was a mistake in the original patch: Previously when fallback wasn't True it didn't choose any other code than the selected one. But now it iterated through the alternative codes even if fallback is False. Now even if no fallback code was valid too it previously has chosen a “random” (it's in Python's hand to choose one; not truly random) one but that only happened when fallback was not False. And when I rewrote that I overlooked that it didn't choose a random one when fallback was False.
So in your case the code is `de` and there is neither a translation for fallback languages of `de` nor one for `_default` and `en` so if fallback was True it should've selected a “random” one. But as fallback is False it didn't but not accidentally did. I hope this description clears things up.
TASK DETAIL https://phabricator.wikimedia.org/T97291
REPLY HANDLER ACTIONS Reply to comment or attach files, or !close, !claim, !unsubscribe or !assign <username>.
EMAIL PREFERENCES https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: Xqt, XZise Cc: XZise, Xqt, Aklapper, jayvdb, pywikipedia-bugs