2008年05月17日(土)
CriScript地味に更新中
CRIScriptの更新を地味に続け中。下記は若干補足情報。
●最近の更新
トピックとしては、
・ECMA4仕様のRestArgsに対応
function func( a, ...arg )
・Objectプロパティをいくつか実装
・バグフィクス
等だ。
当面のゴールはECMA3の互換性テストを通すことだ。
今のところテストベッドとして1700個余りのECMA3互換性プログラムを使っている。(今後Tamarin、Mozilla等の互換性テストも加えると更に増加傾向)
そのうち約850テストをパス済みで、Nightlyビルドの一環としてテストを通している。
通っているのは
・基本オペテータ
・例外処理
・コントロールフロー
・String
等で、主な残りは
・Array
・Math
・Regex
等の組み込みコンポーネントの互換性テストだ。言語部分はそれなりに動いているので、組み込みメソッドの実装と、演算誤差や独自仕様などについてテストプログラム側を修正するというよくわからない状態。
これらが全て通ればECMA3互換と言っても罰当たりではないかと思われる。
ECMA4に関しては良いテストベッドが今のところ見つかっていない。Tamarinのテストコードが最右翼だが、ECMA4の仕様自体まだDraftであることもあって、後回しに。
●リリースプロセス
CRIScriptのリリースプロセスについてはSVNにチェックイン後下記の経路を辿ってサーバー上に反映される
・ビルドサーバー内で一日一回真夜中に更新をチェックして、更新があればビルドプロセス開始
・テストパス起動
・テストパスに全て合格したら、ビルド結果を、バイナリアーカイブ、ソースアーカイブにまとめてサーバ上にコピーして一件落着。ついでにヘッダ上のビルドナンバを更新(次回ビルド用)する。
こうした手順を踏むため、ソースチェックインからバイナリ更新までは最大一日程度の時間差が発生している。
あまり居ないと思うけれど最新ソースをいち早く取得したい場合には、SVN://CRISCRIPT.COMにSVNクライアントから接続するのが良いだろう。
また、メーリングリストに入っておくと更新情報が(手動で)流れてくるので良いかと思う。
●最近の更新
トピックとしては、
・ECMA4仕様のRestArgsに対応
function func( a, ...arg )
・Objectプロパティをいくつか実装
・バグフィクス
等だ。
当面のゴールはECMA3の互換性テストを通すことだ。
今のところテストベッドとして1700個余りのECMA3互換性プログラムを使っている。(今後Tamarin、Mozilla等の互換性テストも加えると更に増加傾向)
そのうち約850テストをパス済みで、Nightlyビルドの一環としてテストを通している。
通っているのは
・基本オペテータ
・例外処理
・コントロールフロー
・String
等で、主な残りは
・Array
・Math
・Regex
等の組み込みコンポーネントの互換性テストだ。言語部分はそれなりに動いているので、組み込みメソッドの実装と、演算誤差や独自仕様などについてテストプログラム側を修正するというよくわからない状態。
これらが全て通ればECMA3互換と言っても罰当たりではないかと思われる。
ECMA4に関しては良いテストベッドが今のところ見つかっていない。Tamarinのテストコードが最右翼だが、ECMA4の仕様自体まだDraftであることもあって、後回しに。
●リリースプロセス
CRIScriptのリリースプロセスについてはSVNにチェックイン後下記の経路を辿ってサーバー上に反映される
・ビルドサーバー内で一日一回真夜中に更新をチェックして、更新があればビルドプロセス開始
・テストパス起動
・テストパスに全て合格したら、ビルド結果を、バイナリアーカイブ、ソースアーカイブにまとめてサーバ上にコピーして一件落着。ついでにヘッダ上のビルドナンバを更新(次回ビルド用)する。
こうした手順を踏むため、ソースチェックインからバイナリ更新までは最大一日程度の時間差が発生している。
あまり居ないと思うけれど最新ソースをいち早く取得したい場合には、SVN://CRISCRIPT.COMにSVNクライアントから接続するのが良いだろう。
また、メーリングリストに入っておくと更新情報が(手動で)流れてくるので良いかと思う。

リンク元(referer)







お元気そうでなによりです。