アップデート情報
0.0.4.3からの変更点
- モードupload:sitemapを新設
- モードglobal:sitemapindexを新設
- モードgoogle:sitemapをwiki:sitemapに変更
- FOAFに対応した
- 差分に色付けするようにした
- ./index.cgi synchronizeを廃止
- ヘッダとフッタを追加(自己貼り付け型広告用)
- 簡易シェルの追加
- wiki:ref 3とwiki:refid 1の追加
- 書き込みに変更が無かったらメッセージを出すように
- 書き込みの衝突時に編集枠を表示するように
- 誘導メッセージの補完
- メインメニューの対応(wiki:menu(転送)とwiki:setmenu(XSLT)。)
- CPUの情報の表示(admin:info/backup:info)
- Security: XSSの修正
- HTMLエスケープの高速化
- 変換コードのクリーンアップ
- ログインチェックの高速化
- サイト設定の整理とフォーマットの変更(タグは\1\0\0\0。構造体ダンプ。)。
- SaveDataのフォーマットを変更(タグは\x001.0)。後方互換は残してあります。
- 伝えるメッセージ(左上)、ウェルカムメッセージ(右上)を追加。
- ライセンス周りの改良(互換性壊してるので要再設定)。
- システムの情報(ディスク使用量/ディスク使用可能量(ハリボテ))を表示するように。
- 閲覧者の情報(権限及びIP)を表示するように。
- BBQ、スパムちゃんぷるーを使うように。
- ディスク使用量と総ファイル数を表示するようにした(後者はfind . | wc -lを使ってる)。
- 構文チェックにエラーメッセージを追加。
- パスワードの更新機能の追加(md5(newpass)^md5(pass)で送ります。)。
- ログアウトの追加
- 内部でのpostの扱いの変更と権限管理の簡略化
- IndexModeとCreateModeの共通部分の切り出し
- 構文チェッカーにより、異常な構文を書き込めないようにした。
- ライセンスに明示しない(非推奨)を追加。
- コマンドラインインターフェースの削除。
- web経由のシンクロに対応。
- アップローダのシンクロに対応。
- backup:upload:listに対応。
- 一般ユーザによるアップロードが壊れてるのを修正。
- 削除パスの保存をmd5からhmac_md5を使うようにした。
- シンクロ時、有効になってるオプションが一緒でないとエラーにするようにした。
- backup:infoを追加。
- admin:infoに有効になってるオプションを追加。
- backup:config以外のbackup:*をbackup:wiki:*にした。
- 色々高速化。
- セクション周りのメモリの使用を少し効率的に(これぐらいコンパイラの最適化がやってくれっての)。
0.0.4.2から0.0.4.3への変更点
- 文章のライセンスに未定を追加。
- メニュー周りを高速化してみた。
- 細かい所を高速化してみた。
- 編集/プレビューの書き込み/プレビューをinputからbuttonに変更しました。
- 文章のライセンスを簡単に決められるようにしました。
- アップロードファイルのソートを実装しました。(sort=time/filename/name/size)
- エスケープツールを編集にくっつけました。
- セクションを文字列にする部分をそれなりに高速化。
- 変換をかなり高速化。
- -inlineを外しました。
- 必要の無いファイルは読み込まないようにした。
- Wikiクラス/Xhtmlクラスの改良と高速化。
- std.zlibでは無く、オリジナルのzlibを使うようにしてみた。
0.0.4.1から0.0.4.2への変更点
- セキュリティーfix
- Wikiクラスのコンストラクタを少し高速化してみた。
- MimeTypesを改良。
- 認証を高速化してみた。
- SaveDataのコンストラクタを高速化してみた。
- 圧縮とヘッダ書き出しを並行にしてみた。
- 標準出力への書き出しを別スレッドにしてみた。
0.0.4から0.0.4.1への変更点
- コメントのシンクロに完全対応。ただしパーミッションに問題あり。
- 管理人以外が新規ページを作成できるようにするかの設定をできるようにした。
- 管理人以外で新規ページの作成ができなくなってたのを修正。
- パーサーを高速に。
- 変換を高速に。
- xhtmlエスケープを高速に。
- MimeTypesを高速に。
0.0.3から0.0.4への変更点
- コメントのシンクロに一部対応しました。
- 素のコメント履歴の表示に対応しました。(mode=backup:comment)
- コメントのRSSに対応しました。(mode=commentrss1.0かcommentrss、mode=commentrss2.0、mode=commentrss0.91、mode=commentatom、mode=commentatom0.3)
- コメントの削除を実装しました。(mode=commentdelete)
- xhtmlエスケープを高速に。
- レスポンスの書きだしをできる限り高速に。
- AppInfoをできる限り高速に。
- パーサを高速にしてみた。
- パーサを再帰を使わずに書き直してみた。
- アップローダーでアイコンを表示するようにしました。
- make depend&&makeでコンパイルできるようにしました。
- コマンドのrefをwiki:refに変更しました。ヘルプも全てのコマンドを表示するようにしました。
- コメント機能に対応しました。mode=commentwrite/commentshow。表示にはAjaxを使います。
- アップローダーのMimeTypeの調整とかupload:mimelistの対応とか。
- アップローダー並び順を逆の時間順に変更
- 設定でアップローダーの保存件数を決めることができるようになりました。
- 設定でアップローダーの標準の一ページのアイテムの表示数とアップロードファイルのサイズの上限を決めることができるようにしました。
- アップローダーの表示数をクエリで制御できるようにしました。(c=一ページに表示するアイテム数)
- アップロードダーのRSSに対応しました。(mode=upload:rss1.0かupload:rss、mode=upload:rss2.0、mode=upload:rss0.91、mode=upload:atom、mode=upload:atom0.3)
- アップロードファイルのMD5を表示するようにしました。
- Wikiの分離に対応しました。
- アップローダーのファイルサイズ絞りこみに対応しました。(fmax=最大値、fmin=最小値という感じ)
- アップローダーの拡張子絞りこみに対応しました。(ext=a,b,cという感じ)
- アップローダーのページ分けに対応しました。(n=ページ)
- 設定、ログイン、情報をadmin:に移しました。
- 履歴に基づいてシンクロの時の差分更新をするようにしました。
- シンクロの時にgz圧縮を使うようにしました。
- シンクロの時に差分を使うようにしました。(Last-Modified/If-Modified-Since)
- シンクロモードの時はアップロード、バグトラッキングの転送をするようにしました。
- シンクロモードの時は管理人権限の特殊化(凍結/凍結解除ボタンの削除、凍結時の編集リンク削除)をしました。
- シンクロモードの場合、バックアップリストやバックアップや差分の表示、編集や新規作成をシンクロ元に飛ばすようにしました。またシンクロ元以外の設定をできないようにしました。
- 別のStructure Wikiとシンクロできるようになりました。(設定は設定からしてください。バックアップは無視します。使いかたは./index.cgi synchronizeをするだけ。)
- 素のソースの表示(mode=backup:dat)、素の一覧の表示(mode=backup:list)、素の履歴の表示(mode=backup:recent)、素の設定の表示(mode=backup:config)、素のソースの情報の表示(mode=backup:pref)に対応しました。
0.0.2.1から0.0.3への変更点
- バグの修正等。
- バグトラッキングに対応しました。拡張コマンドは[bug:link]と[bug:link category]、[bug:no bugnum]です。バグトラッキングのコメント内では"bug ##"や">>1"、"http://~"や"https://~"に対応しています。
- ファイルのアップロードに対応しました(編集→ファイルのアップロードより)。拡張コマンドは[upload:include filename]と[upload:download filename]です。
- ページリストをソートするようにしました。
- 個人用モードを追加
- 設定ページを追加
- あらたにRSS2.0、RSS0.91、Atom0.3、Atomに対応しました。Atomはバグがあるかもしれませんです。
- コードを大幅に書き換えました。
- gdcでもビルドが通るようにしました。
- コンパイルの日時を表示するようにしました@mode=info
- セキュリティーエラー時に403 Forbiddenを、表紙へのリダイレクトに301 Moved Permanentlyを、Acceptなエラー時に406 Not Acceptableを返すようにしました。(IEのエラーに表示される受信不可って何さ)
- h1〜6要素にidを付けました。zlibのadler32を使って.toString("",36)をしてるだけですけどね。
- mode=createの時にデコードされないのを修正。
0.0.2から0.0.2.1への変更点
- nazo.timeのlinux依存部分を削除、nazo.dateへと改名。
- Last-Modifiedが明後日を指してたのを修正。
- PATH_INFO使用時の?mode=newでJSを使わないようにした。
- CgiInfoクラスを作りwikiクラスを統廃合。?mode=infoの対応。
0.0.1から0.0.2への変更点
セキュリティーホールの修正
- タイトルの<>をエスケープするようにしました。
- javascriptスキーマとdataスキーマを無効にしました。
- Acceptのimage/*が高いときはセキュリティーエラーと書いた画像へ転送するようにしました(但しbotを除く)。Fx1.5ではちゃんと防げています。Opera9.0preは効力がありません(objectのtypeでAcceptを変更することはできない?)。おかしなAcceptを吐くIEではimage/gifのセキュリティーエラーへ直行です。
- プレビューと書き込みにリファラチェックを入れました。
機能の追加
- 取り合えずパン屑リストを導入しました。
- 差分に対応しました。
- バックアップに対応しました。
- ローカライズに対応しました。(ヘルプを除く。en-US,ja-JP,zh-CN)
- 更新の衝突で差分を表示するようにしました。
- RSS1.0に対応しました。
- PATH_INFOに対応しました。
- botに対応しました。
- adminに対応しました。
- 凍結、凍結解除に対応しました。(admin)
- バックアップの削除を実装しました。(admin)
- deflateに対応しました。
- googleサイトマップに対応しました。
- Last-Modifiedを吐くようにしました。(バグあり)
バグ修正
- *.pref.lstの書き込み時のバグを修正しました。
- 履歴の並び順を反対にしました。