Catalystのデフォルトのconfigフォーマットが変わった

[Catalyst] IMPORTANT: To all Catalyst::Whatever Authors, please read and ACT

YAML is not an appropriate configuration format for use in perldoc because both yaml and perldoc are sensitive to white space. Therefore they interact. Even worse they interact in different ways depending on the formatter being used.

CatalystコンポーネントプラグインのPODにはYAMLの設定例を書かない方がいいよとのこと。PODとYAMLともにwhitespace sensitiveってのが理由。

混乱を招く前に__PACKAGE__->config(....)とかConfig::Generalを使ったサンプルにした方が良いよとのこと。

実際Catalyst::Devel 1.07のChangeLogには以下のようにあり

1.07    2008-06-02 22:05:00
        - helpers now create default :Path and index :Path :Args(0)
        - Moved Helper.pm to generate .conf rather than YAML
        - Made a warning in the generated Makefile.PL not to delete it.
        -  Incorrect generated pod.
catalyst.pl MyApp

するとmyapp.ymlではなくmyapp.confが作られる。

既存のアプリケーションのConfig::Generalなconfを作るには

perl -Ilib -e 'use MyApp; use Config::General; Config::General->new->save_file("myapp.conf", MyApp->config);'

っちゅーワンライナーでいけるらすぃ。