OSDN Git Service

BugTrack/2520 Remove spaces between heading text and dagger
[pukiwiki/pukiwiki.git] / UPDATING.txt
1 PukiWiki UPDATING
2
3
4 更新履歴
5 ========
6
7 ※詳細は公式Webサイトを参照して下さい
8
9 https://pukiwiki.osdn.jp/?PukiWiki/Download
10
11
12
13 リリース間の互換性に関する記述
14 ==============================
15
16 PukiWiki 1.5.2: PukiWiki 1.5.1 との非互換点
17
18    1. CSSファイル skin/pukiwiki.css.php が skin/pukiwiki.css に変更されました。
19
20
21 PukiWiki 1.5.1: PukiWiki 1.5.0 との非互換点
22
23    1. PukiWiki内でアクセス制限を行う際のデフォルト認証方式がBasic認証から
24       Form認証に変更されました。Basic認証に変更する場合は、
25       pukiwiki.ini.php で $auth_type = AUTH_TYPE_BASIC; を指定してください。
26       多くの場合、Form認証のままでも同じアカウントが利用できます。
27
28
29 PukiWiki 1.5.0: PukiWiki 1.4.7_notb との非互換点
30
31    なし
32
33
34 PukiWiki 1.4.7_notb: PukiWiki 1.4.7 との非互換点
35
36    1. TrackBack実装・referer機能が削除されました。
37       (See BugTrack2/62)
38
39 PukiWiki 1.4.7: PukiWiki 1.4.6 との非互換点
40
41    1. 管理者パスワード($adminpass)のデフォルト値が "pass" から、"(判定に絶対
42      に失敗する文字列)" に修正されました。
43        ※PukiWiki 1.4.6 のパスワードは 1.4.7 に移行できます
44        ※PukiWiki 1.4.6 以降、パスワードの保存形式は変更されています。
45          (See BugTrack/709)
46
47    2. "ページが更新される度に、プログラムをサーバー内部で実行する機能" の実装
48      は、今後グローバル変数($update_exec)ではなく定数(PKWK_UPDATE_EXEC) を使
49      用します。
50  
51      悪意を持った(しかし読み辛い)プラグインを使わざるをえない様に、誰かがあな
52      たに仕向けた場合、$update_exec を書き換えるだけでそれが実現可能です。
53      ("OSコマンドインジェクション" と呼ばれる脆弱性につながります)
54
55    3. 初期コンテンツ:
56       (See BugTrack2/118)
57
58      (ja)
59        マルチバイト文字列に依存したファイル名が初期コンテンツに含まれていた問
60        題を解消した結果、以下のページの名称が変更されました。
61          "整形ルール" => FormattingRules (編集時のリンクから参照されています)
62          "ヘルプ"     => Help (上下のナビゲーションから常に参照されています)
63
64        また、以下のページは添付されなくなりました。
65          "InterWikiテクニカル" => "InterWiki" (内容を集約)
66          "日本語" (削除)
67
68      (en)
69        以下のページ名が修正されました。
70          "FormatRule" => "FormattingRules"
71
72        また、設定 "$rule_page" は "Text Formatting Rules"(※存在しないページ)
73        ではなく "FormattingRules" をデフォルトで指定する様になりました。
74
75      これらの新しいページを追加する場合、忘れずに"凍結"して下さい。
76
77    4. ファイル: 下記のファイルが添付されなくなりました。
78      pukiwiki.php    : 必要であれば index.php をコピーしてお使い下さい。
79      skin/default.js : どこからも利用されていませんでした。
80
81    5. 脚注: 脚注のリンクに埋め込まれていた "脚注そのもの(文字列)" は、脚注全
82      文ではなく、決められた文字数だけ出力します。 (See BugTrack/420)
83
84    6. プラグイン: 以下の付プラグインは、$non_list(一覧しないパターン) に合致
85      するページを表示しません。 (See BugTrack2/140, BugTrack2/175)
86        attach, popular, related, touchgraph, yetlist
87
88
89 PukiWiki 1.4.6: PukiWiki 1.4.5_1 との非互換点
90
91     1. 管理者パスワードとベーシック認証で用いるユーザーパスワードについて、パ
92        スワードの保存方法を九種類の中から選択できる様になりました。この指定方
93        法は LDAP で使用されているものと同一で、RFC2307に準拠しています。(うち
94        五種類は OpenLDAP 互換)
95
96        そのため、今後はパスワードの先頭に、その保存方法(スキーム)が何であるか
97        を明記する必要があります。例えば従来通りMD5ハッシュを用いる場合、先頭に
98        '{x-php-md5}' を追加して下さい。
99
100          // md5('pass')
101          $adminpass = '{x-php-md5}1a1dc91c907325c69271ddf0c944bc72';
102
103        スキームの宣言がないとき、パスワードは平文で保存されていると解釈されま
104        す。
105
106          $auth_users = array(
107            'foo'  => 'foo_passwd', // 平文 (推奨しません)
108            'bar'  => '{x-php-md5}f53ae779077e987718cc285b14dfbe86',
109                      // md5('bar_passwd')
110            'hoge' => '{SMD5}OzJo/boHwM4q5R+g7LCOx2xGMkFKRVEx',
111                      // LDAP SMD5 'hoge_passwd'
112          );
113
114        平文を除く八種類の保存フォーマットについては、強化された md5プラグイン
115        で生成・検証することができます。
116        ※信頼できない環境ではmd5プラグインを使用しないで下さい
117
118     2. 新しいパスワード保存方法の中に crypt() 関数を使用するものが二種類ありま
119        す('{x-php-crypt}', '{CRYPT}')が、crypt() 関数の出力はシステム依存で
120        す。他のシステムへ / 他のシステムから設定を持ち越した場合に動作しない
121        (異なる結果が出力された結果、認証が通らない)可能性があります。
122
123        新旧双方の環境でmd5プラグインを使い、crypt()の結果を比較することで、あ
124        る程度事前に検証する事が可能でしょう。
125
126     3. 新しいパスワード保存方法の中に SHA-1 アルゴリズムを使用するものが三種類
127        あります('{x-php-sha1}', '{SHA}', '{SSHA}')が、このアルゴリズムは PHP
128        4.3.0 以降、あるいは 'mhash' エクステンションが組み込まれた環境でなけれ
129        ば利用できません。したがって該当する環境でなければ、これらのパスワード
130        保存方式を利用することはできません。
131
132     4. サーバーと閲覧者へのDoSを回避するためのリミッターとして、プラグインの呼
133        び出し回数をチェックする機構が追加されました。この結果、いずれかのプラ
134        グインが一定回数 (デフォルト:768回)を越えて呼び出された場合、即座にメッ
135        セージとリンクを表示した後、出力処理が終了します。
136
137        そのため、非常に長い文書の中に同一のプラグインを一定個数以上記載してい
138        る場合に、閲覧が行えなくなる可能性(編集は可能)をもたらします。そのよう
139        な場合、必要に応じて lib/plugin.php にある定数
140        PKWK_PLUGIN_CALL_TIME_LIMIT の値を拡大するか、(編集は可能であろうため)
141        該当ページのコンテンツを適宜複数のページに分割して下さい。
142
143        この場合のプラグインとは、ブロック型 「#プラグイン名」およびインライン
144        型「&プラグイン名;」の全てです。特に後者については「&」のようなHTML
145        エンティティも対象になります。(PukiWikiはHTMLエンティティもプラグイン
146        であると認識します)
147
148     5. (PukiWiki 1.4.5において) 特にOperaブラウザのために、脚注に対する「相対
149        リンク」が「絶対リンク」となるように変更が行われされましたが、ふたたび
150       「相対リンク」となるように修正されました。(詳しくは: BugTrack/698)
151
152        (1) calendar_viewerプラグインやincludeプラグインなど、他のページをイン
153          クルードするプラグインを使用したページの脚注(これらは相対リンクを想定
154          しています) に移動する代わりに、インクルード元のページの脚注に移動し
155          てしまう副作用が発生していたため
156
157        (2) 最新のOperaブラウザでは相対リンクによる影響は修正されているとの報告
158          を受けているため
159
160        定数 PKWK_ALLOW_RELATIVE_FOOTNOTE_ANCHOR(default.ini.php)の値を変更する
161        ことにより、1.4.5 当時の状態(絶対パス)にすることが可能です。
162
163     6. calendar_viewerプラグインが表示するページのタイトル(日付入りのページ名)
164        について、表示フォーマットを切り替えられる様になりました。また、デフォ
165        ルトが「文字列/YYYY-MM-DD」から「年/月/日 (曜日)」となりました。この
166        フォーマットはcalendar_viewerプラグインの先頭で指定する事ができ、元通り
167        に直すことも可能です。
168
169     7. 管理者に電子メールで通知を行う関数 pkwk_mail_notify() が作成されまし
170        た。この関数は自明な値をあらかじめ保持しますが、その副作用として、
171        $notify_header に従来通り From: を設定している場合に From: が重複し、結
172        果的にメールが送信されない可能性があります。
173
174        過去のバージョンから設定の値をコピーする場合、 $notify_header には
175        From: を含めないように修正して下さい。
176
177        PKWK_OPTIMISE が無効となっている時には、From: が重複しているかどうかな
178        どのチェックが行われ、あればエラーを表示します。
179
180     8. 画像のように見えるURIを「インライン画像としてリンク」しないための定数
181        PKWK_DISABLE_INLINE_IMAGE_FROM_URI を有効にすることにより、まさに該当の
182        機能を実現する「imgプラグイン」は機能が無効になります。(BugTrack2/69)
183
184        その結果、#img(,clear) という表記で「テキストの回り込み指定を解除」する
185        機能も無効になります。この機能は img プラグイン とセットで用いるために
186        用意されたものであるため、#img(,clear) を部分的に有効にした場合の影響は
187        予測できません。
188
189        #imgプラグインと無関係な部分であれば、#img(,clear)の代わりに、それ同じ
190        機能を有する #clearプラグイン を使用して下さい。
191
192
193 PukiWiki 1.4.5_1: PukiWiki 1.4.4との非互換点
194
195     1. デフォルトのスキン(enとja)が統合されています。
196        1.4.4用にリリースされているサードパーティ製スキンはほぼそのまま利用でき
197        ますが、ファイル名を含め、若干の調整を必要とするでしょう。
198
199     2. デフォルトのCSS(screen用とprint用)が統合されています。
200        ファイル名に変化がありますが、出力されるCSSの構造的な変化はありません。
201
202     3. :config/plugin/tracker/default の設定が見直されました。
203        特に英語版との兼ね合いにより「優先順位(priority)」が「重要度
204        (Severity)」に改められましたが、互換性を重視し、既に作成されたページに
205        影響が出る部分はそのまま残されています。
206
207     4. 1.4.5以降のスキン、および :config/plugin/tracker/default の内容は新しく
208        用意された機能あるいは変数を使用しているため、以前のPukiWikiでは利用で
209        きません。
210
211     5. ワームなどによる「非現実的な長さのクエリ文字列」をブロックする機能が盛
212       り込まれたため、今までに「極端にページ名が長いページ」に「極端にファイル
213       名が長いファイル」が添付されている場合、それを操作できなくなる可能性があ
214       ります。この場合、定数PKWK_QUERY_STRING_MAX を調節することで回避すること
215       が可能です。
216       また、用途がイントラネット向けであれば、PKWK_QUERY_STRING_MAX の値を 0
217       にすることにより、この機能を無効にすることができます。
218
219     6. 脚注に対するURLが、ページ内相対リンクのみ(#hogehoge)から絶対パス
220        (http://path/to/pkwk?ページ名#hogehoge)に変更されました。
221        これは Opera ブラウザの不具合に対するものですが、副作用として
222        calendar_viewer() のようなインクルード系のプラグインの中の脚注リンクを
223        クリックした場合、個別のページに画面遷移するようになっています。
224        (See BugTrack/698 for detail)
225
226
227 PukiWiki 1.4.4: PukiWiki 1.4.3との非互換点
228
229     1. includeプラグインにリミッターが設けられました(デフォルトで4ページまで)
230
231     2. calendar_viewerプラグインにリミッターが設けられました(一テーマ一回まで)
232        ※将来のリリースで、数回までに拡張される可能性があります
233
234     3. Apache Webサーバー向けに .htaccess ファイルが同梱される様になりました。
235        サーバー上で .htaccess が有効であるとき、例えばattach ディレクトリに保
236        存した添付ファイルに直接アクセスすることができなくなります。この結果、
237        古いバージョンのrefプラグインや、そこから派生したプラグインはうまく動
238        作しないでしょう
239        (これらの制限は、.htaccess を削除することで解除できます)
240
241     4. 初期化処理(init.php)が大幅に見直され、PukiWikiにとって不要なグローバル
242        変数(特に、危険なデータを含んでいるもの)が積極的に削除(unset)される様に
243        なりました。具体的には $_REQUEST, $HTTP_GET_VARS, $HTTP_POST_VARS,
244        HTTP_USER_AGENT 関係, REQUEST_URI 関係, QUERY_STRING 関係のデータにアク
245        セスしていたサードパーティ製プラグインやカスタマイズ部分は、適切に動作
246        しなくなるでしょう
247
248 PukiWiki 1.4.3: PukiWiki 1.4.2との非互換点
249
250     1.  trackbackディレクトリに保存されるファイル名の規則が変わりました
251         trackback/referer機能をお使いで、1.4.2から1.4.3へ移行される場合は、
252         PukiWikir-devサイト ( https://pukiwiki.osdn.jp/dev/ ) の、
253         "開発日記/2004-03-18" を参照して作業を行ってください。
254
255 PukiWiki 1.4: PukiWiki 1.3.xとの非互換点
256
257     1.  [[WikiName]] と WikiName は同じページを指します
258     2.  定義リストの書式が違います (:term:description -> :term|description)
259     3.  リストや引用文は、下位レベルのリストや引用文を包めることができます
260         (1.3.xでは、リストは同種のみ、引用内には引用しか包含できませんでした)
261
262
263 更新履歴
264 ========
265
266 ※詳細は公式Webサイトを参照して下さい
267
268 https://pukiwiki.osdn.jp/?PukiWiki/Download