チケット #27314

記事名にコロンを含むページが正しく処理できない

登録: 2012-01-30 14:15 最終更新: 2012-03-10 20:40

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
(未割り当て)
マイルストーン:
優先度:
3
重要度:
6
解決法:
修正済み
ファイル:
なし

詳細

[[Template:Video game engines]] のページ内の [[Aleph One (game engine)]](リダイレクト)→[[Marathon 2: Durandal]] の内部リンクにて、三番目のページが正しく取得されず、

[[Aleph One (game engine)]] → リダイレクト [[Durandal]] → 言語間リンク無し

と表示される。実際のページは http://en.wikipedia.org/wiki/Marathon_2:_Durandal のように存在している。

チケットの履歴 (8 件中 3 件表示)

2012-01-30 14:15 更新者: honeplus
  • 新しいチケット "記事名にコロンを含むページが正しく処理できない" が作成されました
2012-01-30 14:20 更新者: honeplus
  • 優先度6 から 3 に更新されました
コメント

現状の処理では、:から前を名前空間名や言語間リンクとして判定しているので処理できていない。 仕組みから考え直さないといけないため対応が難しそう。後回しにする。

2012-02-12 19:18 更新者: honeplus
  • マイルストーン(未割り当て) から 1.11 (完了済み) に更新されました
コメント

MediaWikiのAPIを使用して名前空間に加えinterwikiのプレフィックスを取得できることを確認。コロンだけで判別せず、こちらに一致する場合だけ特別なリンクと扱うよう改修する。

2012-02-15 02:17 更新者: honeplus
  • 解決法なし から 修正済み に更新されました
コメント

APIから取得したプレフィックスにより判定を行うよう対応 (r16)。ただしAPIから取得した情報だけでは2/15現在漏れが発生した(commonsやwikt等が不足)。 理由は不明だが、基本的な項目については別途管理(ハードコーディング?)されているようにみえるため、MediaWikiのソースより基本的な項目のプレフィックスを確認、アプリケーション設定として登録し、APIから取得した値と設定値を組み合わせて判定を行うようにした。

ユニットテストと上述の[[Template:Video game engines]]のページでは問題ないことを確認。次回リリースでこの対応をリリースする。

2012-02-19 20:33 更新者: honeplus
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2012-02-19 20:33 に更新されました
コメント

本日上記対応を含んだ1.11をリリース完了。対応完了としてチケットをクローズする。

2012-02-28 20:38 更新者: honeplus
  • マイルストーン1.11 (完了済み) から (未割り当て) に更新されました
コメント

完了済みの本対応だが、本日各言語や姉妹サイトの動作を確認していたところ、原因不明ながらnl,plとWiktionaryでinterwikimapが空で返ってくることが判明。Wiktionaryは以前は処理できた(?)ことから一時的な問題の可能性もあるが、万が一空で返ってくると言語間リンクすら処理できないため、取得処理では念のため毎回、翻訳元/先のコードだけはプレフィックスに追加してから実行するよう対処した (r27) 。

この状態では、翻訳元/先以外の言語間リンクがログ上に [[de:Obelisk]] → 記事無し のように表示されてしまうが、記事無しであれば変換等も行われず実害はないはず。次のリリースではこの修正もリリースする。

2012-02-28 20:38 更新者: honeplus
  • マイルストーン(未割り当て) から 1.20 (完了済み) に更新されました
2012-03-10 20:40 更新者: honeplus
コメント

本日上記の追加対応を含んだ1.20をリリース完了。

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする