2006-01-01から1ヶ月間の記事一覧

defined-or演算子

なお、優先度の高いdefined-or演算子である//演算子は、以前から話題になっているとおり、5.8.8から導入されるようです。これで幸せになる場面はたくさんありますね! 追記: 2006-02-24 5.8.8にはdefined-or patchは含まれませんね。誤解していました。 ただ…

perldelta - what is new for perl v5.9.3

switch/smart match と defined-or キタ(・∀・)コレ!!ということで、期待を込めて一部を意訳してみました。恥ずかしながらPerlのrelease engineeringを知らないのですが、5.9系が5.10(もしくは5.8にbackport)としてリリースされると言うことで良いんでしょうか。あ…

今月のプレゼントキーワード

ブラザーのカラーレーザー複合機「MFC-9420CN」欲しい!

PostWiki

以前から、PukiWikiの開発体制に対する主開発者とそれ以外との齟齬という話は聞いていましたが、forkの運びとなったようです。どちらも「信念」があってやっているわけで、善し悪しというのではなく、自分に適する方を選べば良い、という選択肢の関係になっ…

DBIx-Class-Loader-0.14

差分を見ると、DBIx/Class/Loader/mysql.pmのリレーション周りがまともになっていますね。これで使えるようになったかも。

高木浩光@自宅の日記 - 続・「サニタイズ言うなキャンペーン」とは

反応に反応を重ねるうち、どんどん論点が見えなくなってしまっているような気がします。重要なことはこのあたりかな。 処理内容を理解し、その入力と出力が何であるべきかを理解する。 処理内容が多岐にわたる以上、アプリケーションの入り口での一括処理*1…

SET names utf8

MyApp::Model::DB::Table->storage->dbh->do("SET names utf8");setupが終わった辺りにこれを実行しておけば良いのかな。 Table側でDBもload_componentしてないとだめかも。 追記: 2006/01/11 08:48 これだと、timeoutとかでコネクションが切れて再接続した…

はてなダイアリー市民になりました

上の記事を書いた瞬間にメールが来ていました。 ちゃんと教えてくれるんですね。

MySQL 文字コード

● cs_connection の値に注意するSET CHARACTER SET charset_name すると、cs_connection は charset_nameではなく cs_database の値になる。また、cs_database の値はカレントデータベースの文字コード (DATADIR/DBNAME/db.optがあればそれに、なければcs_se…

DBIx::Class::InflateColumn

CPANに上がっている最新の0.04999_01でもPODが書かれていなくてちょっとしょんぼりなDBIx::Class::InflateColumnですが、changeset:437としてドキュメント付きになっていました。

index template(2)

よく考えたら、素直にサブクラス化してるんだから上書きすれば良いだけですね……orz sub process { my $self = shift; my ( $c ) = @_; unless( $c->stash->{template} ) { my $basename = $c->request->match || $c->request->action; if( $basename =~ m!/$…

index template

my $template = $c->stash->{template} || ( $c->request->match || $c->request->action ) . $self->config->{TEMPLATE_EXTENSION};Catalyst::View::TTでは、パス部のマッチした部分をもとにテンプレートのファイル名を生成するようになっていますが、index…

Changeset 2955: Added YAML config support

その後のchangesetも含めていくつかYAMLによる設定ファイルへの対応がCatalyst本体に入っています。 今までYAMLによる設定ファイルを利用するにはCatalyst::Plugin::Config::YAMLが利用されていましたが、appprefixなファイル名*1、または__PACKAGE__->confi…

HTTP通信内容の確認方法

FirefoxのLiveHTTPHeadersエクステンションは割と有名ですが、IEで手っ取り早く見る方法と言うことでFiddler。プロキシ型なので、本当にそのままじゃない可能性もあることだけを気にしておけばこれで用が足ります。 もちろん、Ethereal/WinpcapやNEGiESでパ…

FreeBSD unionfsの改善提案

unionfsは不安定である、という「噂」は以前から聞いていたのですが、問題点がはっきり理解できました。defaultがtraditionalでも良いから、6系に入って欲しいなぁ。

tcpdrop(8)

FreeBSD おぼえがきで紹介されていて初めて知ったのですが、tcpdrop(8)という名前そのままの、TCPコネクションを切断するためのコマンドがあるんですね。必要になりそうな場面がありそうなので覚えておくと良いのかも。 OpenBSD由来のコマンドのようですね。

prepare_action

Catalystで、パスとアクションのマッピング規則をごにょごにょしたい場合は、prepare_actionで$c->req->pathを書き換えるようなぷらぎんを書けばよいようです。 Catalyst::Plugin::Flavour Catalyst::Plugin::Static::Simple

HTML::Seamstress

HTML::Seamstressというテンプレートエンジンが最近気になっています。SYNOPSISによれば、HTML::Seamstress provides "fourth generation" dynamic HTML generation (templating).と、TTのような「第三世代」のテンプレートエンジンとは違うんだと言うことを…

@lib::ORIG_INC

@lib::ORIG_INCにbuilt-inの@INCが入っているんですね。 lib - perldoc.perl.org Restoring original @INC

サニタイズ処理

高木浩光さんのところで以前から盛りあがっている「サニタイズ言うなキャンペーン」に密かに賛同しているのですが、やはり入力段階でHTML実体参照への書換処理をやっているCGIが多く存在していた事が、「サニタイズは入力段でやるべきもの」という誤解を助長…

あけましておめでとうございます

今年ものんびり行きます。