mediawiki: Suchfehler lesbar statt als Stacktrace (0.1.1) #11

Merged
sko merged 1 commits from fix/wiki-suchfehler into main 2026-10-08 06:02:17 +02:00
Owner

Gleichstand mit inmedias.it/dokumentierer d1eeb94.

Problem

Eine von CirrusSearch abgelehnte Suchanfrage liess mwclient.errors.APIError bis nach oben durchschlagen. Der Benutzer sah einen Stacktrace statt einer Meldung:

mwclient.errors.APIError: ('cirrussearch-parse-error', 'Query was not understood. …')

Änderung

cmd_search fängt den Fehler ab und beendet mit Code 1. Für cirrussearch-parse-error gibt es einen eigenen Hinweis:

$ wiki.py search "insource:/mermaid/"
Error: Suchanfrage nicht verstanden: 'insource:/mermaid/'
Hinweis: 'insource:wort' funktioniert, die Regex-Form 'insource:/muster/'
         ist auf dieser Instanz nicht freigeschaltet.

Der Hinweis stimmt: insource:wort liefert Treffer, die Regex-Form braucht das Elasticsearch-Plugin wikimedia-extra. In ansible/deploy-wiki ist weder das Plugin noch $wgCirrusSearchEnableRegex konfiguriert.

Geprüft

Regex-Form lesbare Meldung, Exit 1
insource:mermaid liefert weiterhin Treffer
Titelsuche unverändert

Version auf 0.1.1. marketplace.json führt keine Versionen, daher nur plugin.json.

🤖 Generated with Claude Code

Gleichstand mit `inmedias.it/dokumentierer` d1eeb94. ## Problem Eine von CirrusSearch abgelehnte Suchanfrage liess `mwclient.errors.APIError` bis nach oben durchschlagen. Der Benutzer sah einen Stacktrace statt einer Meldung: ``` mwclient.errors.APIError: ('cirrussearch-parse-error', 'Query was not understood. …') ``` ## Änderung `cmd_search` fängt den Fehler ab und beendet mit Code 1. Für `cirrussearch-parse-error` gibt es einen eigenen Hinweis: ``` $ wiki.py search "insource:/mermaid/" Error: Suchanfrage nicht verstanden: 'insource:/mermaid/' Hinweis: 'insource:wort' funktioniert, die Regex-Form 'insource:/muster/' ist auf dieser Instanz nicht freigeschaltet. ``` Der Hinweis stimmt: `insource:wort` liefert Treffer, die Regex-Form braucht das Elasticsearch-Plugin `wikimedia-extra`. In `ansible/deploy-wiki` ist weder das Plugin noch `$wgCirrusSearchEnableRegex` konfiguriert. ## Geprüft | | | |---|---| | Regex-Form | lesbare Meldung, Exit 1 | | `insource:mermaid` | liefert weiterhin Treffer | | Titelsuche | unverändert | Version auf 0.1.1. `marketplace.json` führt keine Versionen, daher nur `plugin.json`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
sko added 1 commit 2026-10-06 11:51:22 +02:00
Gleichstand mit inmedias.it/dokumentierer d1eeb94.

Eine von CirrusSearch abgelehnte Suchanfrage liess mwclient.errors.APIError
bis nach oben durchschlagen - der Benutzer sah einen Stacktrace statt einer
Meldung. cmd_search faengt den Fehler jetzt ab und beendet mit Code 1.

Fuer cirrussearch-parse-error gibt es einen eigenen Hinweis: "insource:wort"
funktioniert, die Regex-Form "insource:/muster/" nicht. Letztere braucht das
Elasticsearch-Plugin wikimedia-extra, das auf unserer Instanz fehlt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
sko merged commit d00d195ac3 into main 2026-10-08 06:02:17 +02:00
Sign in to join this conversation.