トップ(最新)

nDiki : 12月23日

2003年12月23日 (火)

Time::Local::gmtime の範囲チェック このエントリーを含むはてなブックマーク

Perl v5.8.x だと、Time::Local::gmtime できちんと範囲チェックが動作している(範囲外だと croak される)のだが、Perl 5.005_03 では必ずしもそうではないようだ。 WiKickerデバッグ中に発見。

でソースを読んでみると、古い Time::Local では cheat サブルーチンで

  • 範囲チェック
  • 指定した年月の開始 gmtime を計算し、%cheat にキャッシュ

している。同一年月での2度目以降 timegm 呼び出しでは %cheat キャッシュを使用して cheat サブルーチンを呼びにいかないので、範囲チェックが実行されないという塩梅。 つまり 2003年1月1日… で一度 timegm を呼び出すと2003年1月に関しては以降 cheat サブルーチンは呼ばれないため、次に 2003年1月33日…で読んでもエラーにしてくれないというわけ(最初に2003年1月33日…で呼んだ場合はちゃんとエラーになるので逆に厄介)。

Perl v5.8.0 以降に標準ではいっている Time::Local ではきちんと毎回チェックする。 うるう年・大の月/小の月も考慮してチェックされる(v5.8.0 より前のでは 31 より大きいかのチェックのみ)。

であり、CPAN では 5.005_03 でも動作する Time::Local パッケージ (1.05~)が公開されている。

Time::Local 1.04 以降を PREREQ_PM にしてもいいのだが、5.005_03 な利用者にとってはインストールするのも面倒か。 最低限のエラーチェックを自前で用意して、互換になるようにした方がいいかな。

スポンサード リンク


過去の今ごろ このエントリーを含むはてなブックマーク

過去の12月23日より。


[ WiKicker ] 自作自演 このエントリーを含むはてなブックマーク

けいむなさんの

「若い方達の文章はとても似ていると思うのですが同一人物ということはないですよねw」

という警鐘が気になって、過去の書き込みのログをチェック。

同一PC(cookie)から、異なるユーザ名での書き込みというのがある程度確認できだのだが、

  • ユーザ名の表記ゆれ
  • 毎回違う名前にしているが、悪質ではないもの(匿名的な書き込み)
  • PCの共有(?)

というのは問題ではないと判断。 しかし1件だけ、ちょっと悪質な自作自演あり。 通常?のユーザ名と別ユーザ名を使い分け、また某アイドル名を騙ってコメント書き込んだ後にその内容に対して自身でコメントを書き込むなどをしており実際に他のユーザに誤解を与えていた。

確認できる範囲でそのユーザの書き込みを削除。 不毛な作業で疲れた。


ゲートシティ大崎 このエントリーを含むはてなブックマーク

行って帰ってきた。 それだけ。

[ 12月23日全て ]

2004年12月23日 (木)

Suunto Observer TT このエントリーを含むはてなブックマーク

rimage:http://www.naney.org/img/2004/U/U2004-12-23-0001.jpg 先週Webで見かけてからずっと気になっていたスント オブザーバーを購入。

@ さまよう

  • ビックカメラ有楽町店 - 店頭在庫1。ちょっと手垢がついていたので「拭けば綺麗になりますかね」と聞いたら店員「これは艶消しの加工のスジですよ」。話にならない。取り寄せだと来年になるそうで。
  • ヨドバシカメラ マルチメディア川崎ルフロン - 店頭在庫1。傷あり。休日なのでメーカー在庫確認ができないので、取り寄せがいつになるかの確認ができるのは明日以降。
  • さくらや川崎駅前店 - TT は在庫無し。
  • ヨドバシカメラ マルチメディア横浜 - 店頭在庫1。これ以上まわるのも大変なので、ここで手をうつ。

(ヨドバシカメラは次の日の朝、Web在庫を確認したら横浜店の在庫表示が無くなっていた。やはり展示品のみというのは確かで、在庫管理もきちんと働いている様子)。

@ バンド調整

ストラップのウレタン部を切るタイプ。 店員がびびりながら調整。 最初4つ分カットしたのだが、ゆるいので12時側をもう1つカット。計5カット。 これでもちょっと弛めなので、ピンの止め位置でさらに調整。 いい感じ。

ちなみに帰って箱を開けたらベルト調節の長さをチェックするためのメジャーがはいっていた。手に巻いてみたら5カットの目盛り。 ばっちりだったようだ。

@ 電池

電池の減りが早いことで有名なようなので、自分で交換もできるようになっているので電池を買っておこうかと。 しかし、電池交換担当者によると自然放電しやすい電池だそうで買っておかない方が良いとのこと。 やめておく。

@ リストトップ・コンピューター

リストトップ・コンピューターと銘打っているだけあって、いろいろモードや設定があって楽しい。 最初はちょっとわかりにくいが、慣れると一通り操作は覚えられそうだ。 ログブックは使う機会がないと思うので、覚えられないかもしれないけど。

参考基準高度設定用に、順次生活エリアの高度を調査せねば。


[ SUUNTO ] [ 製品レポート ]


デパート地下食品売場はケーキだらけ このエントリーを含むはてなブックマーク

帰省用のお土産を買いに銀座松屋へ。

例年通り12月23日はどこも混雑。 松屋の地下はケーキだらけ。 その分通常の商品の品揃えが少なくなっている感じ(勘違い?)


スキージャンプ・ペア オフィシャルDVD part.2 このエントリーを含むはてなブックマーク

スキージャンプ・ペア2

スキージャンプ・ペア2を1日遅れで購入。 DVDコーナーのレジ待ちの列で手にしている人を結構みかける。 大人気。

今日は時間がないので鑑賞はおあずけ。


[ 12月23日全て ]

2005年12月23日 (金)

[ 12月23日全て ]

2006年12月23日 (土)

恒例の年賀状文面作成。 このエントリーを含むはてなブックマーク

年賀状CD-ROMイラスト7000

今年もイラスト集は去年と同じくインプレスので。CD-ROM 2枚組の方。 CD-ROM 3毎組「年賀状CD-ROM 2007」より、こちらの方がバランスが良い。

5種類上がった候補をテスト印刷してチョイス。年号もイラスト集から選んで組み合わせて差出人宛名を入れて完成。

@ Google Maps でぶらり

そういえばこの間実家跡を Google Maps見つけたの思い出して見せてあげた。 「最近はこんなのも見られるんだ」と感心しつつ、故郷を思い出していたようだ。

年賀状作成にきたということで知人の住所が揃っているので、あの人の家やこの人の家の場所やらを上空から確認してみたり。 引っ越してしまって一度も訪問したことのない人が、「こんな所に住んでいるんだ」と興味津々。

@ 外食

今年はと3人で、駅前で中華料理屋で外食。

「うちはお父さんがあまり外で食べるのが好きじゃなかったので、あまり連れていってあげなかったねぇ」


[ 12月23日全て ]

2007年12月23日 (日)

aufs を使って Web サイトのドラフト作成する このエントリーを含むはてなブックマーク

この nDiki はローカル PC 上で Emacs で記事ファイルを書き、出来上がったら UnisonWeb サーバと同期させる形でアップロード・公開している。

この方法で一つ問題なのは「書きかけの記事ファイル」の扱いが面倒なこと。 書きかけの記事ファイルがある状態で Web サーバと同期するとそれが公開されてしまうのでまずい。しかし完成している記事ファイルがあるならばそちらは同期して順次公開したい。 同期する時には書きかけの記事ファイルを退避させればいいのだが、思いっきり面倒。

ということで手元で公開用 (Web サーバ と同期用)のディレクトリツリーと、ドラフト用(ローカルの Web サーバでのレビュー用)のディレクトリツリーを分けられるようにすることにした。 この2つのディレクトリツリーの差分となる草稿・更新ファイルは aufs を使うことで簡単に管理することができる。

@ aufs

aufs は stackable unification filesystem の一つ。 同様なものとしては UnionFS がある。 UnionFS よりも aufs の方が評判が良いようなので今回は aufs を使うことにした。

aufs では複数のディレクトリ(ブランチと呼ぶ)をオーバーレイさせて、1つのディレクトリとして扱うことができる。 公開用ディレクトリツリーに、ドラフト用ディレクトリツリーをオーバーレイさせることで、元のディレクトリには変更を加えることなく透過的に変更できる仮想的なディレクトリツリーを作ることができる。

@ aufsインストール

Debian GNU/Linux sid へはkernel 再構築とあわせて module-assistant でインストールした。

@ マウント

以下のように3つのディレクトリを作ってマウントする。

/home/naney/www.naney.org
公開用ディレクトリツリー。本番モノ。公開サーバと同期する。
/home/naney/draft.naney.org
草稿や修正されたファイルが書き込まれるディレクトリツリー。
/home/naney/next.naney.org
公開用ディレクトリツリーに、草稿や修正されたファイルが仮想的にオーバーレイされたディレクトリツリー。プレビュー用。
 mount -v -t aufs -o br:/home/naney/draft.naney.org=rw:/home/naney/www.naney.org=ro none /home/naney/next.naney.org

公開ディレクトリツリーは read only に、草稿用のディレクトリツリーは read - write になるように指定する。

これで /home/naney/www.naney.org 以下はいじらないまま、/home/naney/next.naney.org 上で草稿を書いたりファイルを編集したりすることができる。 /home/naney/next.naney.org 以下で追加したファイルや、変更したファイルは aufs が /home/naney/draft.naney.org 上に保存してくれる。

完成したものを /home/naney/draft.naney.org から /home/naney/www.naney.org に順次反映させ(移動し)、公開サーバへ同期することで公開していくことができる。

手元ではいろいろ書き散らせておけるのは、これは便利。

マウントオプションは他にいろいろあるようなので、こまかい設定は見直すかも。

@ その他

ファイルシステムレベルの処理なので、アプリケーション側では何も手を加えなくてもよいのが良い。

今回は公開用とドラフト用としたが、公開用と未公開用をローカルでミックスして表示するようにしたり、複数ユーザのコンテンツディレクトリを仮想的に1つにまとめたりと、いろいろ面白い使い方ができそうだ。


Debian Linux kernel 2.6.23 をビルドする。 このエントリーを含むはてなブックマーク

ThinkPad X31 に入れている Debian GNU/Linux sidLinux kernel を随分アップデートしていなかった(2.6.17 を使用中)。 今日 aufs を入れついでに、一緒に最新(2.6.23)をビルドすることにした。 Debian kernel パッケージ構築は去年の8月以来。

今回は linux-patch-aufs を入れておいて、aufs 用のパッチを当てる。

 #apt-get build-dep linux-image-2.6.23-1-686
 #apt-get install linux-source-2.6.23 linux-patch-aufs
 #exit
 $mkdir -p /usr/local/src/linux
 $cd /usr/local/src/linux

 $tar jxvf /usr/src/linux-source-2.6.23.tar.bz2
 $cd linux-source-2.6.23
 $make menuconfig
 $make-kpkg clean

 $fakeroot make-kpkg --added-patches put_filp,lhash,splice,ksize,sysfs_get_dentry --revision=sebastian.1.0 kernel_image
 $cd ..
 $su
 #dpkg -i linux-image-2.6.23_sebastian.1.0_i386.deb

パッチが一部 2.6.22 用で 2.6.23 には当たらなかったが、よしとしておく。 ここで再起動。次に MADWIFIaufsインストール

 module-assistant prepare
 module-assistant auto-install madwifi
 module-assistant auto-install aufs

いつも入れている shfs も同様に入れようと思ったがこちらはコンパイルエラー。 頻繁に使うわけではないので、とりあえずほっておくことにする。

コンパイルが面倒なのでそろそろ Debian 公式のを使おうかと思ったが、試してみたところ

ということ NG。 やはり自前でビルドしなければならないことを再確認。


[ 12月23日全て ]

スポンサード リンク

■よく検索されるキーワード

torrent(51) 動画(24) 安めぐみ(21) 本名(21) tc-1(20) 画像(16) x31(16) wiki(13) windows(13) ドラマ(12) 作り方(12) 壁紙(12) thinkpad(11) ほぼ日手帳(11) 生年月日(11) 評判(10) 使い方(10) linux(10) システム手帳(10) 三条まゆみ(9) 真木よう子(9) インストール(8) usb(8) ポメラ(8) nikon(8) 修理(8) 値段(7) ほぼ日(7) ダイソー(7) 秋葉原(7) デロンギ(6) mp3(6) 無印(6) mp980(6) centos(6) 提案書(6) minolta(6) 無料(6) 口コミ(6) ボールペン(5) リフィル(5) so905ics(5) 書き方(5) スーベレーン(5) 方眼(5) iwgp(5) ミノルタ(5) gimp(5) レビュー(5) バッテリー(5) フリー(5) 評価(5) 万年筆(5) 写真(5) 映画(5) a6(5) タンブラー(5) porter(5) 無印良品(4) skype(4) 変更(4) firefox(4) デジカメ(4) イメージテック(4) make(4) moleskine(4) xp(4) ヨドバシ(4) 交換(4) 手帳(4) ユニクロ(4) 第25回ホリプロタレントスカウトキャラバン(4) f5(4) svn(4) ヨドバシカメラ(4) gmail(4) 冷蔵庫(4) ダウンロード(4) ショートカット(4) 筆まめ(4)

この日記のはてなブックマーク数 Add to Google RSS

Process Time: 3.154316s / load averages: 0.36, 0.30, 0.30
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)