KinoWiki2.3をリリースしました。主な変更点はSQLite3への変更です。
ソースコード
https://github.com/noldor/kino2/releases/tag/v2.3
変更内容
互換性のない変更
DBをSQLite2からSQLite3に変更
PHP5.3以上を必須とした(SQLite3のため)
廃止機能
antispamプラグインの廃止(動作が重すぎた)
注意点
PHP互換性問題
DEPRECATEDエラーとSTRICTエラーが出ています。DEPRECATEDエラーはPEARのDIFFライブラリで、STRICTはコンストラクタの重複(PHP4スタイルとPHP5スタイルの混在)のエラーです。手元の環境では
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
で蓋しちゃってます。
所感
SQLite3はサーバ移管のため
某所からサーバ移管の問題を伺っていてとりあえずCentOS 7(PHP5.6)で動くようにとしたものです。
最初はSQLite2のままで動かそうとしたのですが、CentOS 7へのPHP SQLite2モジュール導入が思いのほかうまくいかず、ソースを修正してのコンパイルが必要になっていました。
これじゃ作ったところで誰も使えないと思い直し、SQLite3を使うようにしました。
旧バージョンからの移行方法としては、DBファイルをSQLite3にすることで移行することになります。ググるといくつか出てきますが、基本方針は
- SQLite2とSQLite3のコマンドライン環境を用意する
- SQLite2でSQLダンプファイル作成
- SQLite3でダンプ取り込み
です。まだきちんとした確認はとれていないですが、SQL文の上位互換性は高いようです。CentOS 7はSQLite2と3をyumで入れられるので変換自体は簡単にできます。jpg添付ファイルが壊れることを確認しました。移行方法を調査中です。v2.3.2で修正しました。
$ sqlite old.db .dump | sqlite3 new.db
CVS開発バージョンは記憶からなくなりました
元のバージョンはOSDN(SourceForge)にあったv2.1のzipファイルを使っています。そこからの開発中ファイルもあるのですが、バージョン管理システムがCVSで、なにがなんだかになってしまったのでzip使いました。こんど全ファイルdiffでも見てみます。
SVNですらないというのが歴史を感じます。触っていて当時の感じ方が思い出されてきて、懐かしく思います。放置しすぎすみません。
今後のメンテナンスどうしよう
今後のメンテナンスを考えるとMediaWikiあたりに移行できるようにできればいいのですが、あいまいリンク機能を実装していないのが痛いです。MediaWikiに限らずあいまいリンクを実装したWikiを知らないのですが、これがないとテキストデータを移行しただけになってしまうので、さてどうしたものかというところが現在です。
最近のコメント