« CPANモジュールのパッケージングの歴史 | メイン | Hachioji.pm#25に行ってきた »

2013年2月15日

今週のおーぷんそーす活動と、Dist::MakerのModule::Build対応とか

深夜のテンションで「おりゃっ」とpullreqを送りつける今日この頃、皆様いかがお過ごしでしょうか。

そんな雑なpullreqに対応してくださってる皆様、本当にありがとうございます。

てことで、今週のpullreq活動。

Dist::Maker

愛用させてもらっているモジュール雛形作成ツール。

Module::Build対応とModule::Buildを使った雛形DefaultMBをpullreqして0.07でshipit してもらいました。

以下のようにすればM::B形式で簡単にモジュールが作成できます。簡単ですね!

% cpanm Dist::Maker

# 設定。設定ファイルの位置は ~/.dim/config
% dim config --import-from-gitconfig
% dim config template.default DefaultMB

# 雛形作成
% dim init My::Module
% cd My-Module

# モジュール書いた後のCPAN Upload処理
% perl Build.pl
% ./Build distmeta
% ./Build manifest
% shipit

これでアナタもシーパン王サー!

これだと最低限ですが、Dist::Makerの雛形書くのは簡単なんで、 Dist::Maker::Template::* を見ながら、自分用にカスタマイズしたの用意すると良いかと。

M::Bの説明書くのめんどくなってきたんで、これでM::B使えますよってことで一つ。

Time::Piece::Plus

Time::Pieceを継承してDateTimeライクなインターフェースを追加した日付モジュール。

結構便利なんじゃないかと思うんですが、あまり使われている気配がなくて不思議な感じがしています。皆様日付処理どうしているのでしょうか。わたし、気になります。

これのadd/subtractメソッドにDateTime的なインターフェースを加えてpullreqして取り込んでもらいました。以下の様な感じ。

my $time_pp = Time::Piece::Plus->localtime;
$time_pp = $time_pp->add(days => 7);

DateTimeと違うのは破壊的じゃないところですね。

これでDateTimeで僕が使ってる機能は大体Time::Piece::Plusに揃ったので、大手を振って以降予定。


両方共俺得でしか無いフィーチャーですが、勇気を出してエイヤッとpullreqした次第。

gfxさん、takuji31さん、ありがとうございました。

DBIx::Schema::DSLも「俺得でしか無いんだよなー」とか言っていたら@typesterに「俺得でも全然良いから出しなよ」とか言われてかなり勇気をもらったりしました。

そういや、Parse::Crontabも俺得でしかないと思っていたけど、機能要望が届いていたりしてありがたい話だなーとか思いました。俺得は誰かの得にもなる、…かも知れない。

おれとくでもいいじゃない、にんげんだもの。

投稿者 Songmu : 2013年2月15日 02:32