Kahua-0.9

English page

Kahua Release

kahua-web Release

Security Advisory

Event Log

Documentation

For developers

Site info

Related Site

Release Note for version 0.9

初の安定版となる1.0リリースに向けた、準備のためのリリースです。

以前のバージョンとの相違

  1. シンプルなページテンプレートシステムを実装しました。
  2. kahua.persistence.mysql、kahua.persistence.postgresql において、インデックススロットをサポートしました。
  3. 旧来のファイルシステムデータベースである kahua.persistence.fs を廃止しました。 これまで使用していたfsdbは、下記のようにefsdbに変換し、efsdbとして使用してください。
    % kahua-dbutil upgrade /path/to/db
    
    このコマンドはインプレースで変換を試みるため、必ずバックアップを行ってから変換を行うようにしてください。
  4. efsdbがデフォルトのデータベース形式となりました。efs: をつけなくても、パス名を指定すればefsdbとして使用します。
  5. 単純タグ関数、高階タグ関数、SXMLにおいて、コンテントとして含まれる#fは単純に無視されるようになりました。
  6. obj->stringメソッドが廃止されました。HTMLドキュメントに出力するオブジェクトの表現形式を変更するには、x->stringを使用してください。
  7. マクロ when: unless:、when/ unless/ を追加しました。それぞれ条件を満たしたとき(あるいは満たさなかったとき)にはbody部分を返し、そうでない場合は空要素に展開されます。特定の条件時にのみ出現するタグを実現するのに利用できます。

バグ修正

  1. タグ関数において、属性値が正しくエスケープ(<>&'"を実体参照に置き換え)されないことがあったのを修正しました。
  2. Kahuaオブジェクトデータベースのメモリキャッシュの扱いを修正しました。
  3. テストスクリプトの一部がcvsコマンドの存在を前提としていたのを修正しました。

動作条件

  1. Gauche-0.8.8 以降(0.8.8のバグについては後述)
  2. Gaucheがpthreadをサポートするように構築されていること。
    $ gosh -V|grep pthread
    Gauche scheme interpreter, version 0.8.8 [utf-8,pthreads]
    
    のように表示されればOKです。
  3. Gauche-0.8.8 には、エラー発生時にメッセージを表示せずに終了してしまうバグがあります。パッチを適用してGaucheをビルドすることを推奨します。

注意事項

  1. 0.8において、efsで追加されたインデックススロットをサポートするための準備として、RDBMSのテーブル構造を変更しました。 0.7以前のリリースバージョンからアップグレードする場合、必ず運用しようとする(新しい)バージョンのKahuaに含まれるkahua-dbutilコマンドでデータベースの変換を行ってください。
    % /usr/local/kahua/bin/kahua-dbutil fix mysql:kahua:password:db=test
    ==Start checking: #<<kahua-db-mysql> "mysql:kahua:password:db=test" (active)>==
    Checking kahua_db_idcount... FIXED
    Checking kahua_db_classcount... OK
    Checking ID column and indexes... FIXED
    Checking removed flags... OK
    ==Done==
    
  2. Linux カーネルバージョン 2.4 系列を使っているシステムでは、 NPTL(Native Posix Thread Library)が組込まれていない libc を使っている場合 (たとえば、2.4 系列カーネルの Debian 3.1 sarge)では正しく動作しません。 2.6系列のカーネルに入れ替えるか、NPTLを組み込んだlibcを使用してください。 NPTLが有効かどうかは getconf コマンドで調べることができます。
    % getconf GNU_LIBPTHREAD_VERSION
    NPTL 0.60
    

Copyright (c) 2003-2007 Kahua Project Contact | About Us