2013-05-24 perldoc.jpにほんのちょこっとだけ貢献(?)してみた. 英語で書かれたPerlの公式ドキュメント, perldocの日本語訳としてperldoc.jpがあります.@argrathさんや@ktatsさん達が積極的・精力的にドキュメントの翻訳をして下さっているので, 私達はPerlのド... 続きを読む
perlDear EOL Perl (5.8, 5.10, 5.12) users, Devel::PatchPerl 0.86 was released yesterday.Now Devel::PatchPerl applies patch to fix CVE-2013-1667 against EOL Perls (5.8.8, 5.8.9, 5.10.1, 5.12.5).I suppose we will be able to get fatpacked patchp... 続きを読む
https://metacpan.org/module/Config::PL .plファイルを設定ファイルとして使う時のユーティリティです。以下の様な感じで使えます。 use Config::PL; my $config = config_do 'config.pl'; do 'config.pl'のハマりどころや不便な点を解消しています。doの問題... 続きを読む
2013-04-15 Starman と Starlet のベンチマークと Accept Serialization StarmanとStarletの違いはいくつかありますが、Starletにいくつか手を加えたあと、速度はどうなっているのか比較してみた。各ソフトウェアのバージョンは以下。 Plack-1.0023 Starman-0.3... 続きを読む
JVNでも公開されていますが、perl 5.8.2からperl 5.16系までのバージョンでハッシュ値の計算に対する脆弱性が報告されています。 perl 5.16系であれば perl 5.16.3、5.14系であれば perl 5.14.4 で修正がされていますので、アップグレードを推奨されています。 ... 続きを読む
2013-03-19 サーバーのセットアップは perlbrew とかじゃなくてよくね? という時のライフハック https://metacpan.org/module/TOKUHIROM/Perl-Build-0.06/bin/perl-build perl-build というコマンドをつかうと便利。 perl-build 5.16.2 /opt/perl-5.16/ とかで... 続きを読む
2013-03-17 Perl5 の CVE-2013-1667 - Important rehashing flaw についての見解 あまり触れる気もなかったのですが、日本語でふれている人がいなかったので。 Perl 5.8 〜 5.16 で DoS の security fix がでています。OS の system perl をつかっている場合に... 続きを読む
2013-03-13 安定的な Perl アプリケーション運用のための perlbrew 運用テクニック 前提知識 Perl5 は minor version 間ではバイナリ互換性が保証されている Perl5 の minor update では、bug fix しか基本的に行われない Perl5 Porters の保守的さ度合いは信用... 続きを読む
こんにちは, 先日Kansai.pmで発表させて頂いたgoccyこと五嶋@たんぽぽグループです. 今回は, 前回紹介した技術的負債の把握と改善を促すためにの続編として, 僕が作ったPerl5コードのコピペ検出器について紹介させて頂きます. はじめに 今やPerl, Ruby等さまざ... 続きを読む
すごいヘビーな負荷を受けているPSGIアプリケーションで「なんでこれで負荷があがるの?」的な現象があったので二つほどTipを。ちなみにこれは 2013/03/06時点での話なので、もしこれをあなたが大分将来に読んでいるのなら、状況に変更がないかちゃんと確認する... 続きを読む
具体的には Redis の subscriber なんですが、pub/sub の pub 側が publish し続けている状態で subscriber を再起動すると、落ちてから起動までの間に来たメッセージを取りこぼす可能性があります。pub 側を一時停止すればいいのですが、fluent-plugin-redis_p... 続きを読む
PlackアプリをプロファイリングするモジュールPlack::Middleware::Profiler::NYTProfを更新しました。 https://github.com/dann/p5-plack-middleware-profiler-nytprof bayashiさんにパッチをもらって、負荷テスト環境などでも使えるようになりました。ある一定... 続きを読む
2013-02-03 carton + 開発版の cpanm で、特定のバージョンのモジュールをつかいこなす! 開発版の cpanm で、META file の version range がサポートされるようになりました。CPAN の META spec v2.0 では、version range がサポートされていて、以下のような柔... 続きを読む
やあハッキングモンスターのみんな、元気かーい? ぼくは普通です。きょうはみんなでログをう゛ぁーてぃかるぱみゅぱみゅしちゃうぞ!あ、こんにちは bayashi です。さて、ログは見てるかい?cat してるかい? tail してるかい? GB単位のログを vim で開いてフ... 続きを読む
Cache::LRU::WithExpires - can set an expiration for the Cache::LRU - metacpan.org Cache::LRU に expires の機能をつけただけのモジュールですね。 最初はプロダクトのコードで使っていましたが、だれか (たしかグニャラくん?) がコピペして再利用してい... 続きを読む
2012-11-13 Perlで補完のきくインタラクティブシェル perl すなわちRubyでいうpry相当のもの。Perlのインタラクティブシェルは たくさんある のだけれど、自分は Devel::REPL を使っているのでそれを推したい。 Devel::REPL Devel::REPL の何がいいかというと ... 続きを読む
A weblog about Programming, Tech, gadgets, Japan and San Francisco. tl;dr: if your module is shipped with Module::Install 1.04 bundled, it will cause issues with perl 5.16 and creates bad MYMETA depending on a devel release of MakeMaker. Pack... 続きを読む
perlPerlでコマンドラインオプションをparseしようと思うと組込みモジュールとしては Getopt::Std と Getopt::Long がある。が、long style option *1 つまり --option-name のようなオプションを解釈してくれるのは Getopt::Long だけだ。なので普通はこちらを... 続きを読む
Webアプリケーション開発時などに依存するバックグラウンドプロセスを管理するツールとして rubyで作られた foreman というツールがあります Procfileという名前のファイルに worker: ./bin/worker web: plackup web.psgi と書いて $ foreman start とやると指... 続きを読む
https://github.com/tokuhirom/node-perl/ ここ最近、プログラミング言語同士の壁が徐々に破壊されている気がします。あるプログラミング言語上で別なプログラミング言語を動くようにしたり、置き換えてしまったりするような類です。今回はその一つ、CPAN modul... 続きを読む