〜2005年4月中旬〜
今朝は20℃ぐらいあったから、上着なしで会社にでかけたけど、帰るときには7℃に。 そんなのありかよ!
どうも最近ActiveRecordを真似た実装が流行ってるような。
class Foo module ClassMethods def hoge(*) end end extend ClassMethods include ClassMethods end class Bar < Foo hoge :hoge1 ... end
しかし、Last.FMよ。昨日も今日も夜だけつながるってのはどういう嫌がらせなんだ。 昼間に聴きたいのに。
なにげなくyum updateを始めると全然終わらない。あー、kernelかー。 もう寝ようと思ったのにあと170分とか表示してるし。 とりあえず今晩はこのまま寝よう。
Date.strptimeってあまり知られてないのかな。
% ruby -rdate -e 'puts Date.strptime("13/04/2005", "%d/%m/%Y")' 2005-04-13
Time.strptimeもある。
% ruby -rtime -e 'puts Time.strptime("2005/04/13 23:44:55", "%Y/%m/%d %H:%M:%S")' Wed Apr 13 23:44:55 JST 2005
やっとGmailのSettingsにLanguageが出てきた。 日本語にしてみたけど、1年近く英語で使っていると違和感あるねえ、やっぱ。 でもヘルプも日本語になったのでいろいろ読んでみよう。
そういえば日本語メールの送信もいつのまにか quoted-printable じゃなくて、普通の形式になってる。 これでようやくGmailから何も考えずにメール出せるな。
月末の日付けは-1を指定すればいい。
% ruby -rdate -e 'puts Date.new(2005, 4, -1)' 2005-04-30
負数は月末からの序数となる。
そういえばTime.strptimeは先月1.9に入ったばかりでした。 1.8には入らないかな。
前回学習したおかげか今回はspamにならなかった。 rpmでインストールした後、vmware-config.plを実行。問題なく移行完了。 VMもupdateできた。
しかし、アップグレードの値段が$99据置きってのはちょっと割高感があるね。
Gmailよ。なぜruby-talkやruby-devへ俺が送ったメールをspam扱いする? って、あまりメール出さないからか。
Changes:
A mirror --loop option has been added to re-mirror until no changes are found. A bug where mirror created too many children mirrors has been fixed. Use of cls and mirror with an HTTP backend when PROPFIND returns a 404 error have been fixed. mirror --use-cache with an SFTP backend has been fixed. A rare hang in SFTP has been fixed.
全然loginできない。試しに別のメールアドレスで登録してみると
- There is a problem with the database. Please try again later
と言われた。なんかやばそうだな。 もうBloglinesなしじゃニュースも読めないだけに非常に困る。 代替の手段を用意しとかないとまじやばいかも。
23時頃復活。
2099MBになったのでSign outして見たが、例のJavaScriptでもカウントアップは終了していた。 2100MB以降はどうなるかな?
13日から新しいstreaming engineのテストが始まったようだ。 popupのplayerを立ち上げてJavaScriptのソースを見てみるとAjaxだった。 昨日から使ってみての感想としては、 外観はちょっとずつ変わってきてるけど基本的には何も変わってないような。 流行に乗ってみましたって感じか。
止まると
This Last.fm stream has stropped. Feel free to start another stream.
のようなメッセージが出るみたい。いろいろデバッグしてるんだな。
ここ数ヶ月ruby-talkの流量が減ったように見えるのは単にnews gatewayが機能していなかっただけの話で、今月なんか4000通ペースだ。 いや、もうこれ以上増えなくていいから。
あと、Gmailで受けるとスレッドでくくられちゃうので、実際に受けるメール数よりも少なく感じるのかもしれない。
散髪に行きたいんだけどこの時期は花粉症で躊躇してしまう。 床屋もいつもより客が減ったりするんだろうか?
高林さんからFile.safe_unlinkの件でバグ報告があった。 なんか雰囲気的にftools.rbはobsoleteにはなりそうもないので、 ちゃんと対応することにしよう。
で、現象としては
% touch foo % ln -s foo bar % ls -l foo bar lrwxrwxrwx 1 eban eban 3 Apr 18 01:24 bar -> foo -rw-r--r-- 1 eban eban 0 Apr 18 01:24 foo % ruby -rftools -e 'File.safe_unlink("bar")' % ls -l foo bar ls: bar: そのようなファイルやディレクトリはありません -rwxrwxrwx 1 eban eban 0 Apr 18 01:24 foo
のようにbarが消えるのはいいとして、fooが777になってしまうという不具合。
いまは問答無用で777にしてるけど、FileUtilsのように失敗したら777にすべ きだよね。 いや、どうせWindows対策なのでsymlinkだったらchmodしないでもいいような気もしてきた。
fileutils.rbとcoreutilsのrm.cをつらつら眺めながら、こんなのを考えてみた。
class << File def safe_unlink(*files) verbose = if files[-1].is_a? String then false else files.pop end files.each do |file| begin unlink file $stderr.print "removing ", file, "\n" if verbose rescue Errno::EACCES # for Windows begin mode = stat(file).mode chmod mode | 0200, file unlink file $stderr.print "removing ", file, "\n" if verbose rescue chmod mode, file rescue nil end rescue end end end end
念のためパーミッションを元に戻すようにして、 0777じゃなくてu+w相当の|0200にしてみたり。 ようするに消す努力はするけど消せなくても何も文句言わないという感じ。 だからverboseってのは変なんだよなあ。 誰もverboseなんて使ってないと思うけど。 なにしろこんな表示だもんなあ。
% touch bar foo % ruby -rftools -e 'File.safe_unlink("bar", "foo", true)' bar foo
というわけで、ちょっとだけcoreutilsに似せてみた。
Changes:
This release fixes crashing problems reported by some users. It adds true syslogd support.
true syslogってなんだろう?
クラスメソッドの呼び出しがFileだったりFileTestだったりどちらもなしだったり、自分で作っときながら統一感がまるでない。 というわけで、class << Fileしてるんだから全部なしということで。 かなりすっきり。
こうもsecurity fixが続くと、やっぱ他のツールに移行したくなるよねえ。
やっとFC3のFirefoxを更新。でも立ち上がらない。
% firefox -ProfileManager
で、新たにプロファイルを作って、 いろんなもんを旧プロファイルからコピーし、拡張を追加していったら SessionSaver が立ち上がらない原因だとわかった。 うーむ。まあ、bookmarkだけ移行すればいいか。
ついでに入れたわけなんだけど、タブを閉じるとゴミ箱に入るとこが素敵だ。