僕のYak Shavingは終わらない

車輪の再発明をやめたらそこには壮大なYakの群れが

最新版のDevel::KYTProf#add_profが変更されていた件


上記のようなソースコードだと最新版のDevel::KYTProfで以下の様なエラーが出る。

Can't use string ("render test.tx") as an ARRAY ref while "strict refs" in use at /Users/MyUserName/.plenv/versions/5.16.2/lib/perl5/site_perl/5.16.2/Devel/KYTProf.pm line 252.

で、こっちのようにするとうまくいく。

変更点は

Devel::KYTProf->add_prof(
    "Text::Xslate",
    "render",
    sub {
        my ($orig, $self, $file, $args) = @_;
        # []でくくっただけ
        return [sprintf '%s %s', "render", $file];
    }
);

ちなみに確認したがDevel::KYTProfのVersion 0.02だと一番上のソースコードでも問題なかった。
cpanmでVersion指定できるのが活躍しました。

cpanm Devel::KYTProf@0.02

fujiwaraさんがスライドであげていたやつが動かないのでなんでだろうと思ったらそんな感じでした。

まあここでハマるの僕くらいかもですが参考になれば!!