記事名にコロンを含むページが正しく処理できない
現状の処理では、:から前を名前空間名や言語間リンクとして判定しているので処理できていない。 仕組みから考え直さないといけないため対応が難しそう。後回しにする。
MediaWikiのAPIを使用して名前空間に加えinterwikiのプレフィックスを取得できることを確認。コロンだけで判別せず、こちらに一致する場合だけ特別なリンクと扱うよう改修する。
APIから取得したプレフィックスにより判定を行うよう対応 (r16)。ただしAPIから取得した情報だけでは2/15現在漏れが発生した(commonsやwikt等が不足)。 理由は不明だが、基本的な項目については別途管理(ハードコーディング?)されているようにみえるため、MediaWikiのソースより基本的な項目のプレフィックスを確認、アプリケーション設定として登録し、APIから取得した値と設定値を組み合わせて判定を行うようにした。
ユニットテストと上述の[[Template:Video game engines]]のページでは問題ないことを確認。次回リリースでこの対応をリリースする。
本日上記対応を含んだ1.11をリリース完了。対応完了としてチケットをクローズする。
完了済みの本対応だが、本日各言語や姉妹サイトの動作を確認していたところ、原因不明ながらnl,plとWiktionaryでinterwikimapが空で返ってくることが判明。Wiktionaryは以前は処理できた(?)ことから一時的な問題の可能性もあるが、万が一空で返ってくると言語間リンクすら処理できないため、取得処理では念のため毎回、翻訳元/先のコードだけはプレフィックスに追加してから実行するよう対処した (r27) 。
この状態では、翻訳元/先以外の言語間リンクがログ上に [[de:Obelisk]] → 記事無し のように表示されてしまうが、記事無しであれば変換等も行われず実害はないはず。次のリリースではこの修正もリリースする。
本日上記の追加対応を含んだ1.20をリリース完了。
[[Template:Video game engines]] のページ内の [[Aleph One (game engine)]](リダイレクト)→[[Marathon 2: Durandal]] の内部リンクにて、三番目のページが正しく取得されず、
と表示される。実際のページは http://en.wikipedia.org/wiki/Marathon_2:_Durandal のように存在している。