2016/03/20(日)PukiWikiを1.5.1に更新

PukiWikiを1.5.1に更新

ECO-Wiki (acronia)で使っているPukiWikiは2015/03/25のスナップショットでしたが、PukiWiki 1.5.1 がリリースされたのでバージョンアップしました。

改造箇所があるのでdiff-patchで適用しましたが、大きな修正が必要な衝突もなく上手く動いているようです。

影響がありそうな変更点

将来的なものも含めて影響があるかもしれない変更点。

  • PHP7.0 対応
400 Bad Request

さくらのレンタルサーバーでまだPHP7.0を使えないので、役に立つのはしばらく先になりそうです。

  • ユーザー管理機能および認証方法の拡張
    • Sessionを利用したForm認証が追加され、デフォルトとなりました。グループを利用してページのアクセス制御を行う機能が追加されました。外部認証機能が追加されました。Single Sign Onシステムとの統合が可能になりました。
400 Bad Request

今は認証は使っていませんが、そのうちスパム対策とかで使いたくなることもあるかも。

  • ホスティングサイトのドメイン変更に対応
400 Bad Request

リンク先が変わりました。

  • pcommentプラグイン
    • dev:BugTrack2/370: コメント記録ページが引数で未指定の時に使用されるデフォルトルールが、Comments/ 配下に統一されました。
    • 既に旧バージョンでコメントされている場合は、バージョンアップ後もそのページを参照します
400 Bad Request

今後、新ページができたときは、そのときのコメントページの名前はComments/になります。既存のコメントページと名前がばらばらになるのが気持ち悪いので、いっそリネームするかどうか悩ましいところです。

  • newプラグイン
    • dev:BugTrack2/120: PHP5.0以降で、経過時間に応じてNew!を表示する機能が動作しない問題の修正
400 Bad Request

コメント欄って、newが表示されるのかΣ('◇'*)

コメント欄

しかし、この機能はbodycacheとの相性が悪そうです。まあ、ページ生成時点では新しかったと言うことでもそんなに問題なさそうなので、とりあえずそのままにしておきましょうか^^;*1


既に適用していた変更点

  • 各WikiページURLの簡略化
    • 各ページに対応するURLを、階層構造が明確になるように変更しました。 path/to/wiki/index.php?BugTrack2%2F361 -> path/to/wiki/index.php?BugTrack2/361
400 Bad Request

2015/03/25時点で実装済みでした。(わざわざスナップショットを取ってきた理由の1つ。)

  • スキン周りの修正
    • デフォルトのスキンで、ディレクトリがハードコード(固定)されている問題を修正(dev:BugTrack2/190 → BugTrack/691)
        • スキンの"HTML convert time"に、Menubar等の処理時間が含まれない問題を修正(dev:BugTrack2/251 base patched by ぃぉぃぉ?)

メニューバーの中で使われたプラグインがDTDの切り替えを行っても、DTDタグ出力に反映されない問題を修正(dev:BugTrack2/262 patched by Ilfa?)

400 Bad Request

この内、HTML convert timeの問題は対応済みで、 「HTML convert time: 0.065 sec. (total: 0.128 sec.)」のようにMenubar等の処理時間を含んだものも併記していました。今回公式に変更がされたので、併記はやめて公式と同じ表記に戻してあります。

  • counterプラグイン
    • dev:BugTrack2/141: PHP5.1以降で、yesterdayカウント機能が正常に動作しない問題の修正
    • dev:BugTrack2/356: 一部エラーメッセージの修正
400 Bad Request

yesterdayカウントの問題は対応済みです。かなり長いこと放置されていましたが、やっと直りましたね。


ECO-Wikiには影響なさそうな変更点

  • LDAP/Active Directory対応
400 Bad Request

使う予定の無い機能。

  • TrackBack関連とReferer関連のすべてをパッケージから削除
400 Bad Request

使っていない機能です。

  • 編集開始時の雛型ページ一覧でリストアップされるページの制限と拡張設定
    • 雛型ページ一覧の機能が有効な際、編集を開始した直後に表示されるページ一覧が設定用wikiページで指定したページとそれ以外の100件までに変更されました
400 Bad Request

負荷軽減のために無効化済み。変更前は無制限だったわけで、そりゃ負荷もかかる(^_^;)

  • ファイル所有者の自動補正の対応先を追加
    • 1.4.6で搭載されたファイル所有者の自動補正を、counterプラグインなどでも対応させました。
400 Bad Request

ファイルの所有者は既に適正なので影響なさそうです。

  • 既存の問題の修正
    • (dev:BugTrack2/320) 1.4.4_rc1以降のリリース全てにおいて、一部環境で path/to/wiki/index.php?0 とページ名0のみでアクセスすると、ページ0ではなくデフォルトページに飛ばされる問題を修正
    • (dev:BugTrack2/245) path/to/wiki/index.php?PageName&word=SearchWords のようなパラメーター付きで cmd=read&page= 省略形式が使用されると、パラメーターまでページ名に含まれてしまう問題を修正
    • (dev:BugTrack2/290) PHPのPECL_HTTPが読み込まれる環境で、一部定義が競合する問題を修正
    • (dev:BugTrack2/358) 長い注釈が含まれているページを閲覧すると、一部のサーバー環境でページが表示されない事がある問題の緩和
400 Bad Request

ECO-Wikiでは特に問題になっていなかったように思います。

  • FormattingRules
    • (dev:BugTrack2/192) 英文を書く際に問題となる1.3.x互換の日時置き換えルール(now?,date?,time?)を、デフォルトで無効に変更。この形式に依存していた部分を1.4以降の形式に修正。
    • (dev:BugTrack2/7) 一般的なプロトコル(httpなど)について、[[URI]] の書式が可能な限り URI の書式と同じリンクを作成するように変更されました。これにともない、該当するケースでこれらのプロトコルと同名のInterWiki定義が無視されるようになります。
400 Bad Request

どちらも影響なさそうです。

  • attachプラグイン
    • dev:BugTrack2/264: (ページの下部の表示を含む)添付ファイル名の一覧表示でも常にmd5値を計算する、という無駄な処理を取り除く修正 (patched by ぃぉぃぉ? & ryu1)
    • dev:BugTrack2/354: 添付ファイルダウンロード時、文字化けの可能性がある問題の再修正
    • dev:BugTrack2/264: 画像専用の解析処理を、特定の拡張子を持つ添付ファイルに限定する改善
    • dev:BugTrack2/376: ファイルを削除した後で同名ファイルを新規に添付すると、同名の過去ファイルのダウンロードカウンタがリセットされる問題の修正
    • dev:BugTrack2/345: 添付ファイルのリネームを実行しても同名の過去ファイルに反映されない問題の修正
400 Bad Request

負荷軽減のために無効化済み。毎回md5計算とかしてたなら、そりゃ負荷もかかる(^_^;)

  • commentプラグイン
    • dev:BugTrack2/381: コメント追加が失敗した場合に、適切なメッセージが表示されるように変更
400 Bad Request

全く影響ないわけではないですが、そもそも失敗することがあまりなさそうなので。

  • trackerプラグイン、tracker_listプラグイン
400 Bad Request

使っていない機能です。

不具合?

Wikiソースの一番上に

#author("2016-03-19T16:53:49+00:00","","")

という記述が編集時に自動付加され、編集ページを開いたときには除去されて表示される仕組みが追加されたのですが、「編集→凍結解除→編集ページ」と遷移したときは#authorが除去されないようです。

普通に編集するだけなら分からないので、あまり問題はなさそうです。

明記されていない変更点(追記)

HTTPレスポンスヘッダでcanonical URLを返すようになっています。

Link: <http://eco.acronia.net/wiki/>; rel="canonical"

そのため、これまで実施していたLink要素でcaonical URLを指定する改造は、機能が重複するため削除することにしました。

*1 : 本気で修正するならJavaScriptでNew判定した方が良さそう。