2002-06-29
らぜふぉん
録画しておいたやつ見たですよ。
話しが重い .. 。
これ、血の色が青だからまだフィクションだって思えるけど、血の色が赤で描写してあるとかなりエグいっすよ。
_ ま〜ちゃん@日比谷野外大音楽堂
* 前
雨だー。
ちんたら外出して 1700 ころ会場着。ちるさん、ぶんじさん、ほださん、もげさんと合流。ちるさんと席が隣なので同行してちんたら。
* ライブ
しょっぱなから最近の歌。分からん。いちお 4 th あたりまでのアルバムは買ってるけど、最近のやつは買ってないから歌が分からにぜ。
ま〜ちゃんてギター演奏できたんすね。最近練習してたみたいだけど、ラジオとか聞いてないから最近の事情は知らないの。最後に逝ったライブではピアノやってるのを見たけど、最近はギターなんすか。
アンコールのときはバトン使ってました。バトン部だったって、いつ。ま〜ちゃんて多才すね。エネルギーとかすげぇし。これで同い年なんだよな。魅力あるよな。ヲレみたいなヘタレとは違うよ。
アンコールが 3 回あったんだけど、なんかいまいちだった。タイミングっていうか、ステージの出演者が退場する前から「 アンコール 」が客から叫ばれたり。うーむ。
ライブステージとしてはやはりマリちゃんのほうが楽しい。うまいっていうか、なんか。
野音では、マリちゃん、潤子さんのライブを経験したことがあります。どちらも雨女と言われてるけど、実際にはライブ当日は雨は降ってないす。でも今日は降りました。ま〜ちゃんの雨女は本物だ。
ていうかやっぱ歌聞かないで予習してなかったのは勿体無いな。
* 後
新橋にて飲み。ほださんは会場にて別離。もげさんはいつのまにかフィルタリングされて別離。
さくら水産。ヲレ、くろさん、ぶんじさん、ちるさん、佐藤さん、佐藤さんの友人。
最後にお茶漬けを食おうとしたら米が切れてるとか。ぉぃ。仕方無いので今日の店長のお勧め( だっけ )にあったタイ焼き 6 個。人数ぶん。タイ焼きというわりには揚げてあったです。胃がおかしい。
割勘でひとり \3K でした。安い。さくら水産は良いっすね。
2003-06-29
_ 朝の頭痛
これはきっと机の作業環境が良くないんだ。バファリン飲んでも効かないし。
_ ぅぅ
チオビタ飲んでだらだらしてちょっと復活。なんでこんなに体力消耗してるんだ。
_ む
とりあえず 7/8 発売の日経 LInux は買っておけとかいう噂。
_ 運動
どーにも身体がしんどいのは体力が無いからだ、そうだ走ろうというわけで久ぶりに玉川河川敷を走ってきた。ああひどい。太陽はすっかり夏だし足の筋肉がょゎょゎだし。
走ってたらユニフォーム姿の弊社の藤谷部長( 仮名。「しんちゃん( ヲレのこと )、近所の少年野球の監督やってんだけどさ今度お前の父ちゃんのところの諏訪と試合やろうぜ、ていうかしんちゃんコーチやんない?」「 ぃゃっはっはもう体力ないから無理 」という会話をよく社内でやる )とすれ違った。向こうは気づいてないみたいだし、こちらも気づかなかったふりをして素通り。
疲れた。おかげで身体が起きた。
_ 買物
いつか買ってやると思っててついにビバップ DVD を購入。カードキャプターさくら DVD 1 〜 18 と同作品劇場版 DVD 2 枚を売って、あと手元にポイントが貯ってるアニメイトカードが 10 枚くらいあったので結局ふところは減らなかった。
_ 天国を追われた天使は悪魔になるしかないんだ
ビシャスキター
_ #8 WALTS FOR VENUS
真綾キタ。ステラ役。TV 放映時はさっぱり分からなかった( ちうか真綾知らなかった )けどいま見るとすぐに真綾と分かる。このときの真綾のほうがいいな。
ステラ「 ロコはどんなだったの?」 スパイク「 見えてなくても分かるだろ。いいやつだったさ 」
泣ける。
_ フェイ・ヴァレンタイン
前髪を上げてると萌えるんだよね。
2004-06-29
_ 朝
風呂掃除。
_ ふむ
やはり足の指のつけねあたりの骨が痛い。
_ 「ハッカーの名折れだ」のガイドライン
( たつをの Changelog より )
_ おまえ なんなんだよ!
ぅゎ。シンの攻撃すごすぎ。ひとが散ってるよ。こんなの戦って勝てるんでしょか。
_ 氷食った
歯が痛い。
_ ふむ
でかいひとが言ってたが毎週火曜と水曜か。
2005-06-29
_ 仕事
ということで今日はお休み。
_ 日付変更線
現実逃避に日記に書く日付を YYYY.MM.DD 形式から Changelog のように YYYY-MM-DD に変更してみた。
スクリプト。
rin@sakura[~]% cat `which td2chlike`
#!/bin/sh
# tDiary の日記のテキストファイル内の "YYYY.MM.DD" を "YYYY-MM-DD" にする
test -z "$1" && echo "Usage: td2chlike <directory>" && exit
cd "$1"
find . -type f | grep -E "*\.td[^rc]?$" | while read file; do
sed -e 's#\([0-9][0-9][0-9][0-9]\)\.\([0-9][0-9]\)\.\([0-9][0-9]\)#\1-\2-\3#g' $file > tmp; mv tmp $file
echo $file " ...done"
done
実行。
rin@sakura[~/diary]% td2chlike .
2006-06-29 :-)
_ 被日記チェック
mixi 日記に比べてこちらをチェックしているマイミクシィのひとは少なそうだ。
_ 箱根紀行 1 日目
無計画に箱根に行ってゆったりします。
_ 箱根紀行 宿
せっかくだからヲレは 箱根プリンスホテル の富士山ビューツインルームに泊まるぜ!
本館がどこだか分からなかった ^^;
受付から部屋まで案内してくれた女性が美人だった。美人っていうか、なんていうんだ、目がクリっとしてて笑顔が素敵。いいねえ。あ、美人な人妻はこのひとではないです。なにが。
建物全体は入り組んでいて鬼ごっこしたくなるようなところです( 子供か )。
古風な部屋。

部屋の窓からは芦ノ湖が見えます。

右を眺めまーす。

下を眺めまーす。

斜め前方の下を眺めまーす。

_ 箱根紀行 ちょっと休憩!
@コーヒーハウスやまぼうし。
アップルパイ。厚くて柔らかいです。

レストラン トリアノン があるのだけど案内を見たら「 男性の方はジャケット着用してくれたまえ 」とか書いてありました。そんなもの持ってない。
2007-06-29 :-)
_ 朝モヤに向かって走れ
0520 起床。チャリった。遠方がかすんで見えるます。湿度が高いんだろか。
_ 日記を見れば思い出す
焼き菓子[ 2007-06-28 ]を持って帰るの忘れてた!
_ 秀まるおのホームページ−秀丸エディタの紹介( 単語補完機能1 )
秀丸エディタ Ver7 では、単語補完機能が新たにサポートされています。単語補完とは、入力された文字から始まる単語を秀丸エディタがリストアップし候補として表示し、選択することで 入力することができる機能です。
ぉぉ。
でも日本語は無理みたい。
_ つわけで物欲は続くよどこまでよというか勢いというかお約束というか
( youichi さんとこ )
某みわさんとかいうひとのdel.icio.usにこんなんがあって。
某が某になってないというのはじつは「○○のみわ」という肩書きがあって、その「○○」を「某」と表現しているんじゃなかろうか。では「某」とは何か。
正解は...!
( つづく )
_ ブックマークウォッチ
youichi さんのところにもあったけどブックマークをウォッチするのはけっこう楽しいです。たいていのブックマークは RSS フィードがあるのでフレッシュリーダーなどの RSS リーダーに登録しておくとウォッチできます。私がフレッシュリーダーに登録しているのはこんな。
ちなみに私のブックマークはこちら。
_ 2 つの時刻を比較する
ださい。
#!/usr/bin/ruby
require 'time'
s1 = "2007-06-28 22:00:42"
s2 = "2007-06-29 03:37:52"
qt = Time.parse( s1.split( ' ' ).first( 2 ).join( ' ' ) )
pt = Time.parse( s2.split( ' ' ).first( 2 ).join( ' ' ) )
d = pt - qt
ar1 = d.divmod( 3600 )
hour = ar1[ 0 ]
ar2 = ar1[ 1 ].divmod( 60 )
min = ar2[ 0 ]
sec = ar2[ 1 ]
puts "#{hour} h #{min} min #{sec} sec"
% ./t00.rb 5 h 37 min 10.0 sec
_ あなたのテンプテーションなら見切れなくてもいい
ロマサガ 2 ネタ。
_ テンプテーション
テンプテーションは七英雄のひとりロックブーケ( 女 )が使ってくる技です。食らうと混乱します。パーティの男性キャラに有効。女性キャラには無効。ロマサガ 2 には「 見切り技 」というのがあります。敵が使った技を「 見切る 」と見切った技を回避できるようになります。かなり重要。ロックブーケが使うテンプテーションも見切れます。むしろ見切れないと戦闘がつらいです。
どうでもいいけど七英雄の名前は JR 山手線の駅名が由来です[ 2005-04-27 ]。ロックブーケは池袋が由来です。
_ FINAL FANTASY IV 「愛のテーマ」ヴォーカルオーディション開催!
ディレクター「時田貴司」&作曲家「植松伸夫」大いに「愛」を語る
開催記念 web ラジオがあります。聞いてみました。
- 植松伸夫が中学生のころに好きな子に渡したラブレター。たくさん
- 30 年ぶりに彼女と会った
- 彼女( すでに孫がいる )はラブレターをまだ持っていた
- ラブレターを読んだら当時のことをすべて思い出した
「ラブレターを書いた」という記憶がフックになるんですね。
ものを覚えるためには恋をしながら書くと良いんです!
恋をしながらマインドマップを描くんです! (`・ω・´)
どんなだ。
- メールの返事が短いとショック
- インターネットは愛を阻んでいる
- ラブレターは手書きだろ、メールはダメ
- 最近郵便受けに手書きのものが入ってない
どうでもいいけど私はラブレターを書いたことはありません。
_ 4行日記
- 【事実】寝たい衝動を抑えて椅子に座って読書しようとしたら椅子に座ったまま寝落ちした。
- 【気づき】今朝早かったしチャリったので疲れていたようだ。
- 【教訓】朝にチャリ乗ると昼間疲れる
- 【宣言】チャリは 2 日おきくらいに乗る
2008-06-29 :-)
_ iPod touch を復元などをしている
iTunes が iPod touch を認識しなくなってしまった。頻繁に刺したり抜いたりするというか「同期作業」してるときに引っこ抜いたかもしれない。
_ クラシックショコラを焼き始めた
暗いですが
_ tdiary を trunk にすることは怖くないよ
tdiary も UTF-8 です。
作業。
tdiary trunkを取得
svn co https://tdiary.svn.sourceforge.net/svnroot/tdiary/trunk tdiary-trunk
公開ディレクトリへコピー。
mkdir -p ~/public_html/tdiary-trunk cp -R tdiary-trunk/core/* ~/public_html/tdiary-trunk
tdiary-2.2.1 の tdiary.conf 等をコピー( あとで気づいたがこれはあまり良くない )
cd ~/public_html cp tdiary-2.2.1/tdiary.conf tdiary-trunk/ cp tdiary-2.2.1/.htaccess tdiary-trunk/.access
apache を停止
sudo /etc/rc.d/apache stop
シンボリックリンクを張りなおす
cd ~/public_html rm diary ln -s tdiary-trunk diary
apache を開始
sudo /etc/rc.d/apache start
デフォルトのまま使っているぶんには問題ないす。contrib やタグクラウド等のプラグインは未確認。ダメかもしんない。
ref.
_ tdiary の「以前の日記へのリンク元」が化けた( 解決 )
上記の作業のままだと「以前の日記へのリンク元」が文字化けします。

たぶん先ほどやったこれが原因?
cp tdiary-2.2.1/tdiary.conf tdiary-trunk/
tdiary-2.2.1/tdiary.conf は EUC-JP です。
tdiary-trunk/tdiary.conf.sample は UTF-8 です。
ということで変換します。
nkf -w --overwrite tdiary.conf
「以前の日記へのリンク元」の文字化けは解消しました。

_ tdiary の野良プラグインをコピーする
cp tdiary/plugin/category_to_tag* tdiary-trunk/plugin cp tdiary/plugin/mm_footer.rb tdiary-trunk/plugin cp tdiary/plugin/nicovideo.rb tdiary-trunk/plugin cp tdiary/plugin/rss-recent.rb tdiary-trunk/plugin cp tdiary/plugin/tag-generator.rb tdiary-trunk/plugin cp tdiary/plugin/youtube.rb tdiary-trunk/plugin
タグクラウドはエラーになりました。
500 Internal Server Error uninitialized constant TDiary::Plugin::Category (NameError) (plugin/category_to_tagcloud.rb):103:in `gen_tag_list' (plugin/category_to_tagcloud.rb):137:in `load_plugin' /home/rin/public_html/diary/tdiary.rb:802:in `call' /home/rin/public_html/diary/tdiary.rb:802:in `update_proc' /home/rin/public_html/diary/tdiary.rb:801:in `each' /home/rin/public_html/diary/tdiary.rb:801:in `update_proc' /home/rin/public_html/diary/tdiary.rb:1463:in `do_eval_rhtml' /home/rin/public_html/diary/tdiary.rb:1463:in `instance_eval' /home/rin/public_html/diary/tdiary.rb:1463:in `do_eval_rhtml' /home/rin/public_html/diary/tdiary.rb:1054:in `eval_rhtml' /home/rin/public_html/diary/update.rb:62
_ タグタグ
たぐ
_ タグっす
どうっすか
_ tdiary の category_to_tag プラグイン
しばたさんからツッコミを頂いたので[ 20080629#c04 ]やってみた。
追加。
diff -u ~/public_html/tdiary-trunk/plugin/90migrate.rb 90migrate.rb
--- /home/rin/public_html/tdiary-trunk/plugin/90migrate.rb 2008-06-29 19:04:50.000000000 +0900
+++ 90migrate.rb 2008-06-29 22:08:18.000000000 +0900
@@ -67,7 +67,7 @@
# convert pstore cache files of plugins
dir = @cache_path || "#{@data_path}cache"
- %w(makerss.cache recent_comments recent_trackbacks tlink/tlink.dat whatsnew-list blog_category).each do |e|
+ %w(makerss.cache recent_comments recent_trackbacks tlink/tlink.dat whatsnew-list blog_category category2tagcloud.cache).each do |e|
convert_pstore( "#{dir}/#{e}" ) if File.exist?( "#{dir}/#{e}" )
end
Dir["#{dir}/disp_referrer2.d/*"].each do |file|
コピー
cp tdiary-trunk/core/plugin/90migrate.rb ~/public_html/tdiary-trunk/plugin/
cp tdiary-trunk/contrib/plugin/category_to_tag* ~/public_html/tdiary-trunk/plugin
さらに
apache を停止
sudo /etc/rc.d/apache stop
cache を削除
rm category2tagcloud.cache
apache を開始
sudo /etc/rc.d/apache start
ふうむ。
_ tdiary のカテゴリのキャッシュとか
違う。
File.exist? してるから category2tagcloud.cache を rm したら処理しない。
# convert pstore cache files of plugins
dir = @cache_path || "#{@data_path}cache"
%w(makerss.cache recent_comments recent_trackbacks tlink/tlink.dat whatsnew-list blog_category category2tagcloud.cache).each do |e|
convert_pstore( "#{dir}/#{e}" ) if File.exist?( "#{dir}/#{e}" )
end
Dir["#{dir}/disp_referrer2.d/*"].each do |file|
convert_pstore( file )
end
Dir["#{@data_path}category/*"].each do |file|
convert_pstore( file )
end
# rename category cache files
Dir["#{@data_path}category/*"].each do |file|
dirname, basename = File.split( file )
new_basename = u( @conf.migrate_to_utf8( CGI::unescape( basename ) ) )
FileUtils.mv( file, File.join( dirname, new_basename ) ) unless basename == new_basename
end
_ ヨタの車窓から
明日は 90migrate.rb からお送りします。
2009-06-29 :-)
_ 朝ッ
0520 起床
_ 仕事
0830 出勤。
_ いつのまにか cygwin の zsh のプロンプトが残念なことになっていた
ググール検索して見つけた → terminfo & ncurseのバージョンあげた
/usr/share/terminfo のファイルをごにょごにょするらしい。そのまま実行して OK
_ 肉なしの件について
複数人( 2人以上 )からツッコミを貰ったのでマジレス( マジックスパイスはスープレスが良いんだよね )すると、三輪が肉じゃが(肉なし) や ホイコーロー(肉なし)やカルボナーラ(肉なし)を作る理由はこうだ。
肉を入手するのが面倒
以上だ。
_ 肉買えよ
肉が嫌いなわけでない。最寄り駅の商店街に肉屋はあるしスーパーの肉売り場もあるんで帰宅の途中に肉を買えばいいんだがそれも面倒くさくて結局肉を買わずに帰宅し「あー、ニク...」と呆然としつつ「代わりにキノコでも使うか」といつもどおりに肉料理を作るのである。当初はそのようなノリで作っていたのだが時を重ねるにつれてそれが習慣になり、本来の肉を使ったレシピを覚えずに今に至る。肉じゃが(肉アリ)の作り方は覚えてない( レシピは手元にある )。挽き肉については、学生のころ近所のヨーカ堂でアルバイトしていたころに食堂で豆腐ハンバーグを食ったときに吐きそうになり、それ以来 ミンチされた物はすっかり食えなくなった。いや食えないというか食うと吐くので食わない。なお、上記のような「肉なんて飾りです」という程度の料理ならば肉なしメソッドが使えるのだが、牛丼や豚の生姜焼きなどどう見ても肉が主役( メインキャラクター )の料理はさすがに肉があるときに作る。
「カネが無いときは肉がなくてもチンジャオロースと言うんだよ」とジェット・ブラックもそう言っている( カウボーイビバップ #01 参照 )。
_ 6月27日にリッジレーサー7 全日本選手権というのが開催されたらしい
日本選抜 vs 海外選抜だそうな
日本選抜の勝利。
YouTube - Futurelocus さんのチャンネル のひとの WRC ナンチャラという動画がいくつかあるんだが( YouTube - WRC全日本選手権 決勝1-3 など ) WRC とはなんぞや、と千里眼でググッたら上記のサイトにたどり着いた。カテ1ニトロポイントの動画などでいつも勉強させてもらってるんだがこの動画のひと( Locus さん )でさえ勝てないんだから、WRC 参加者は雲の上のようなひとたちなんだろう。実際 WRC全日本選手権 決勝1-3 を見ると分かるけど Lost Ruins ではジャンプドリフト必須のようです。ぐへ。てくるでこのひとの WRC全日本選手権 決勝4-5 の 00:18 でリバースチャージでクラッシュしてしまった悲しさを表現するためにミンサガの「傷心のアイシャ」を使ってるあたりは高感度倍増。
_ リッジレーサー7
ジャンプドリフト練習。ダイナミック車でやらないとあまり効果ないでうs おとなしくダウンフォースコントロール使うなどしたほうがよさそうだ
- 走行距離 23709.464 km
- RSGP 進行度 100.0 %
- 名声 18757 FP
2010-06-29 :-(
_ 朝ッ
0520 起床
_ 通勤
汗だく
_ いつもの
% wget http://peak.telecommunity.com/dist/ez_setup.py % python ez_setup.py % easy_install ipython
_ ,
ドラッカーが売れてるならそのぶんだけ状況がよくなるとお思いで
_ NetBSD Blog - Testing NetBSD: Easy Does It
NetBSD をテストするのは簡単にできる
June 24, 2010 posted by Antti Kantee
In a software project as large as NetBSD the interactions between different software components are not always immediately obvious to even the most skilled programmers. Tests help ensure that the system functions according to the desired criteria. Periodic automated runs of these tests with results visible on the web ensures both that tests are run in a regular fashion and that the results are available to all interested parties.
NetBSD ほどの規模のソフトウェアプロジェクトにおいて、異なるソフトウェアコンポーネント間の関連は最上級プログラマであってもすぐに把握できるようなものではない。the desired criteria によれば( 訳: 要求仕様???? )、システム関数はテスト可能である必要がある( 訳: ううむ.... )。テストを定期的に実行し、テストとテスト結果をウェブに表示するというやり方はよくやるし、すべての当事者にとって有効である。
This short article explains the NetBSD test strategies and provides a brief overview of the enabling technologies. It also details how effortless it is to run the test suite and why doing so is in every developer's, patch submitter's and system administrator's best interest. The intended audience is people with a keen interest in testing and quality assurance, and a desire to reduce personal headache. The article is written against NetBSD-current as of June 2010 and applies to what will eventually become NetBSD 6.
ここでは、NetBSD のテスト方針を説明し、テストの実現方法の概要を説明する。また、いかに手間をかけずにテストスイートを実行するか、なぜテストがすべての開発者、パッチ提供者、そして管理者にとって有益なのかを説明する。対象とする読者は、テストや品質保証に強い関心があるひと、頭痛の種を減らしたいひとである。この文章は 2010 年 6 月の時点での NetBSD-current で書き直したものであり、いずれ NetBSD 6 にも反映されるだろう。
Automated Testing Framework (ATF)
Automated Testing Framework (ATF)
Julio Merino's Automated Testing Framework (ATF) unifies the interface for running tests, enables customizable test report formats and provides a standard interface for implementing tests. ATF also provides a mechanism for tests to determine if the feature under test, such as hardware, is present in the system and skip the test instead of incorrectly failing it. The goal is to make the tests run conveniently in batch mode without human supervision -- hence the name automated. ATF is shipped with NetBSD and all new NetBSD tests should be written against ATF.
Julio Merino による Automated Testing Framework (ATF) はテストを実行するためのインターフェースを統合したものである。テスト結果をカスタマイズして整形し、テストを実装する標準インターフェースを提供する。ATF はまた、システムに搭載されているようなハードウェアテストのように、テストが失敗した原因を究明するためのテストの仕組みや、誤っていたときにテストを失敗する代わりにスキップする機能も提供する。( 訳: ????? )
ATF tests are found under /usr/tests in a standard NetBSD installation. As pointed out on the ATF website, this is done to enable a system administrator to run the NetBSD test suite for the specific hardware/software setup with minimal effort. Executing the tests should be viewed as insurance for a particular installation and reporting any test failures immediately may save a lot of head scratching down the road.
ATF テストは NetBSD を標準インストールでは /usr/tests にある。ATF ウェブサイトで指摘しているように、システム管理者が最小の労力でハードウェア/ソフトウェアの NetBSD テストスイートを実行できるようにしてある。テストを実行すると、インストール時の insurance を見ることができ、どんなテストが失敗したらすぐに将来頭を抱えることになるものを保存する( 訳: なんのこと????? )
The tests can be run with the atf-run command in the appropriate subdirectory for a partial set of tests or on the top level of /usr/tests for the entire NetBSD test suite. Since the output of atf-run is meant to be post-processed by other tools, the idiomatic command for creating a human-readable report includes a pipe to the report generator:
テストを実行するには、tests set 内の適切なサブディレクトリか、または /usr/tests で atf-run コマンドを実行すれば、NetBSD の test 一式を実行できる。atf-run の出力は、パイプなどを介し、レポート可視化ツールによって post-processed しやすい出力になっている:
atf-run | atf-report
This gives a verdict for all the tests. Also, a summary like the following one is presented:
これによりすべてのテストを評価され、以下のような出力を得られる:
Summary for 25 test programs:
83 passed test cases.
0 failed test cases.
0 expected failures.
2 skipped test cases.
Further documentation for running the tests and controlling the report format is available from the ATF manual pages, specifically atf-run and atf-report.
テストの制御や、出力形式について詳しいことは、 ATF の atf-run や atf-report のマニュアルページに詳細が書いてある。
Automated NetBSD Installation and Test Application (anita)
( 訳: Automated NetBSD Installation and Test Application 自体が固有名詞なのでこれは訳す意味ないよね )
The Automated NetBSD Installation and Test Application (anita) is a tool written by Andreas Gustafsson. When anita is run, a URL to release set binaries is given as an argument. Anita downloads the release sets, creates a disk image, boots the downloaded release in a virtual machine and installs the release. For example, the following command will download and install NetBSD/i386 5.0.2, and boot the resulting installation to a command prompt:
The Automated NetBSD Installation and Test Application (anita)は、Andreas Gustafsson によって書かれたツールである。anita を実行するとき、引数として release set の URL を受け取る。Anita は release sets をダウンロードし、ディスクイメージを作成し、ダウンロードした release を仮想マシン上で起動し、インストールする。たとえば、次のコマンドは、NetBSD/i386 5.0.2 ダウンロードし、インストールし、起動し、実行結果をコマンドプロンプトへ表示する:
anita interact ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-5.0.2/i386/
Currently, anita supports only QEMU and the i386 port, although there has been interest in adding support for other virtual containers and NetBSD ports. Since installation is done in a virtual machine, the environment is theoretically the same regardless of the host the command is run on. This is both a blessing and a curse: different anita runs are comparable regardless of where they are executed, but features specific to certain machine configurations are not exercised. Nevertheless, if an anita install is successful, there is reasonably high confidence that the release it was executed for works.
現在は anita は QEMU と i386 port のみをサポートしているけど、他の virtual containers や NetBSD port をサポートすることに興味はある。仮想マシンへのインストールが完了したら、その環境は、理論的には anita interact を実行したホストと同じ環境になる。これは幸福でもあり災いでもある: 異なる anita を実行すると、実行された anita と比較的無頓着である ?????????? のだが、あるマシンのための設定をする詳細の機能は動作しない ??????????。それにもかかわらず、anita のインストールが成功したならば、anita の実行結果はそれなりに信用していいだろう。
What makes anita especially effective for testing installation is that it uses "screen scrape" with the sysinst installer. This means the display output of sysinst is read and interpreted by anita, and commands are given as response to the output. This tests that the installation works like a human would be doing it and sets it apart from testers which use various machine scripts to perform test installations.
anita の何がインストールテストにとくに効果的なのかというと、sysinst インストーラーと一緒に screen scrape を使うことだ。sysinst の出力は、anita に読まれ、解釈され、コマンドはその出力への応答として与えられる。このテストは人間のようにインストールをテストし、様々なプラットホームのマシンでのインストールをテストするスクリプトを実行するテスターのためにある。
Test Reports On The Web
ウェブでテストレポートを見る
In addition to anita, Andreas has written a set of tools which fetch the current sources from cvs, build a release, and use anita to install the release and run the ATF tests. The results are currently available on his website. The source revisions committed between each build/install/test run are available behind the "Details" links on the page. Furthermore, if the system build is broken, the tools make an effort to hunt down the exact guilty commit before publishing the result as to when the build was broken.
さらに anita には、Andreas が書いた current ソースを cvs から取得したり、release ビルドしたり、anita でrelease をインストールして ATF テストを実行する、というツール群がある。その成果は彼のウェブサイトで見ることができる。コミット済みのリビジョンのソースでは、build/instlal/test のいずれも実行でき、"Details" リンクを辿ればそのソースを見ることができる。さらに、システムビルドが失敗する場合、そのツールはビルドの失敗を報告する前に失敗する原因を特定しようと試みる。
If despite testing efforts a regression does slip through, the logs from the runs make it easy to track down which commit introduced the regression, even days after it was introduced -- although hopefully it will not take so long to correct things. Once enough logs have been accumulated, they can also provide a source to figure out what breaks often, due to what, and for how long. This information can be used to prevent similar problems for occurring in the future.
レグレッション( テスト? )でもまだ解決しない場合( 訳: ???? )、レグレッション( テスト? )が失敗する原因を追求するためにレグレッション( テスト? )を実行したあとの数日間は実行結果のログが役立つ( 訳: ???? )。けどあまり長期間それが有効であることは期待できない。じゅうぶんなログが蓄積されたのならば、失敗したときになぜそうなり、どのくらいの間そうなっていたのかを解明するための材料となる。この情報により、今後似たような状況になることを防ぐことができる。
Running The Test Suite With Anita
Anita によるテストスイート実行
The results mentioned in the previous section are used as a reference point to determine the current health of NetBSD. Developers and users submitting patches are encouraged to repeat the anita test run to make sure changes do not have unwanted side-effects. Additionally, developers are committed to not causing long-term regressions in the anita test runs -- a clean test report for a submitted patch may further convince that the patch was sufficiently tested and should be included in NetBSD. Nevertheless, common sense is allowed as to when this is necessary.
前節でのテスト結果は、NetBSD の状態を診断するための基準となる。開発者や利用者からパッチが提供されれば、望まぬ副作用が発生していないか確認するために anita でのテストを繰り返して実行することができる。そして、開発者は anita テストを実行し、 long-term レグレッションさせずにコミットできる。提供されたパッチへの全テスト( 訳: clean test ???? )のレポートは、パッチはじゅうぶんにテストされ、NetBSD に入れることについてさらに確信をもてるだろう。とはいうものの、NetBSD 界隈では( 訳: common sense )テストが必須であることを認めるだろう( 訳: ???? )。
Although writing tests is not covered in this article, it is also highly recommended that new features are submitted with the relevant tests in the same package. This is also to the advantage of the submitter since, as mentioned above, developers are required to make sure [future] changes do not cause existing tests to fail.
ただし、テストを書くことについてはこの文書の範囲外であり、新しい機能は関連するテストも一緒にパッケージとすることをお勧めする。( 訳: 前半と後半がうまくつながらない )。これは、提供者の強みである。上述のとおり、開発者は、変更があったとき既存のテストが失敗しないことを要求するからである。
Anita can be found in pkgsrc under misc/py-anita. As of writing this, pkgsrc-current (and what will become pkgsrc-2010Q2) is required. Also, QEMU version 0.12nb3 or later is required due to a bugfix in the CPU emulation -- test runs will hang indefinitely without this bugfix.
Anita は pkgsrc の misc/py-anita にある。この文書が書かれた時点では、pkgsrc-current ( そしてもうすぐ pkgsrc-2010Q2 も ) が必要になる。そして CPU エミュレーションについて bugfix されている QEMU version 0.12nb3 またはそれ以降が必要になる -- bugfix されてないとテストがハングする。
A full anita install/boot/test cycle including the ATF test report is accomplished by using the test option. For example, when build.sh is used to build release sets into /objs/obj.i386/releasedir/i386, the following command would be used to run an install/boot/test cycle:
ATF テストレポートを含めた anita による install/boot/test の全工程は、テストオプションを使うことで完遂できる。たとえば、build.sh は、/objs/obj.i386/releasedir/i386 で release sets をビルドすればいい。install/boot/test をおこなうそのコマンドはこう:
aanita test /objs/obj.i386/releasedir/i386/
If the development host runs NetBSD and is sufficiently up-to-date, it is possible to simply run the ATF tests there. However, due to reasons already mentioned, the results might or might not reflect the anita run. The recommended "no brains necessary" method to make sure that a change does not cause a regression in the anita run is to do an anita run. Since it does not require additional hardware or even disrupting current work due to having to reboot, there is little excuse for not doing so. On the flip-side, the anita run does not test the system configuration of the development host, so ultimately the best choice is to run the tests in both environments. This arguably doubles the amount of necessary command lines from one to two, but still leaves little excuse for not executing both.
開発マシンで NetBSD が動作していて最新に保っているならば、ATF テストを実行するのは簡単だ。しかし、すでに原因が追求されているならば、anita の実行結果については熟慮したほうがいいかもしれない。"no brains necessary" された場合、変更されていても anita を実行したときにレグレッションは発生しない( 訳: ???? )。よって、ハードウェアを追加したり、または reboot によって作業を中断させる必要がない ようにするためにほんの少し作業するだけでいい。その反面、開発マシンのシステム設定のテストを anita で実行することはできない。結局、最善の選択は、両方の環境でテストが走ることだ。この 2 つを間違いなくおこなう( 訳: ???? )ためには 1, 2 行のコマンドラインが必要になるのだけど、まだ両方を実行することはいくつかの理由により出来ない( 訳: ???? )。
Conclusions
おわりに
This short article presented NetBSD testing options and provided a brief introduction to the tools to make it happen. NetBSD testing is done periodically with results available from a web page, but manual execution, either piecemeal or wholesale, is possible and highly recommended. Ultimately tests help ensure the quality of NetBSD, and it is in everyone's personal interest to run tests on their local machines and to include test cases along code submissions.
この文書では NetBSD テストのオプションと、テストツールで何が出来るかをいつくか紹介した。NetBSD テストの結果は定期的に更新され、ウェブページから確認することができるのだけど、とくに、一部分や全体( 訳: ???? )をテストする場合は手動で実行するといい( 訳: ???? )。結局テストは NetBSD の品質を保証できるし、誰でも自分のマシンでテストできるし、コードを配布するとき( 訳: ???? )に含めることも出来る。
Acknowledgments
謝辞
Thanks to Andreas and Julio for their work on these awesome tools and for comments on a draft of this article.
Andreas と Julio の素晴らしいツールとその仕事に敬意を表し、この文書へコメントしてくれたことに感謝する。





少年ハミング(伊藤真澄/畑亜貴/イノトモ)






















キヤノンの仕事術―「執念」が人と仕事を動かす(酒巻 久)
キヤノン方式のセル生産で意識が変わる会社が変わる (ものづくり技術アドバンスト)(酒巻 久)











_ さいき [今の真綾ちゃんは、ステか?(ぉ]
_ みわ [いまの真綾の演技はなんかいまいち...。なんていうんだろう。真綾の素のままなんだよね]
_ さいき [作られた声が好きなみわれん?]
_ みわ [キャラクタの向こうに真綾が見えるような感じ。ラゼフォンの美島で感じたんだけどそーいうのは美島だけかもしれない]