長年愛用していた、mailagent って、perl scriptがあるのですが、ついに動かなくなった。ずいぶん前に、メンテナンスしないって宣言あったとはいえ、死んだ原因は perl 5.10 のアップデート。ユーザ向けの公式メーリングリストを運営していた俺としては、寂し限り。

perl 5.10 で、$* って変数の使用が不可能になったのですね。これは、multi-line match のオプション指定フラグで、昔からperlにあった機能。 /m と /s オプションで指定できるから、ということなんだけど、warningいれずに、いきなり機能削除ってどういう事かと。

いや、mailagentは結構手動で起動してるので、「$* は、次のバージョンでdeprecateされるよ」とかwarning出てたら気づくし、覚悟するわけですよ。嫌々procmailに乗り換えるとか(どうもあのsyntaxが苦手なのだ。。)それが、いきなり、severe error になるのって、どうかなと。スクリプト動かなくなっちゃうんだもん。

たしかに、perl の 5.x の x は、かなり激しく最近変わっていて、少し前は perldelta とか真剣に全部読んでから入れ替えてたんだけど、そんなにマジでchange log追っかけてる暇は俺には無い。

古いスクリプトが動かなくなる要素についてのケアが十分だったかというと、そうではないと思う。どこかのフォーラムを注意してみてるべきだったかって?そうかもしれない。でも、それを全てのユーザに強要するというのは、どうかなと思う。これ、痛い目にあってるユーザ結構居るんじゃないかと俺は思うのだけど。。

まぁ、究極、5.10にうっかりバージョンアップした俺が悪いわけだけどね。NetBSDのpackage maintainerも、5.8->5.10は、一段違うって、認識してるべきだったんじゃないのかな。パッケージつかってると、バージョンあっぷされちゃうんだよね。難しい問題だよ、これ。

perlは、半分寝ててもコード書けるんだけど、そろそろ使うの止める潮時なのかな。


Archived comment:

みんみん 20 Oct 2008

うーん、とても重要な情報だ。そろそろmailagent止めないといけなくなるのかなぁ

blog comments powered by Disqus