自从发现perlbrew以来,我是一个快乐的CPAN用户。但我从未想到的是如何阅读模块的更改日志。例如,当在CPAN shell中查看过时的“r”时,我想轻松检查更改日志以决定是否升级。
当然,我可以下载模块,解压缩,并寻找更改日志。但我希望有一种更简单的方法。你是怎么做到的?
我正在使用旧的CPAN shell。如果CPANPLUS或cpanminus支持这一点,我会考虑切换。
答案 0 :(得分:6)
我只看CPAN Search。每个分发的主页面链接到主文件,您还可以浏览整个分发。您无需下载或解压缩发行版。
您也可以使用cpan命令的-C开关,这样您就不必输入CPAN.pm shell:
$ cpan -C Some::Module
我不知道有什么东西可以立即显示所有过时模块的Changes文件。这可能会在终端有点乱。您可以使用-O开关来装配某些东西:
$ cpan -O | perl -anle 'print $F[0] if $. > 9' | xargs cpan -C
那里有$. > 9
位可以跳过CPAN.pm输出和表头。这肯定是丑陋的。
如果你想做一些更奇特的事情,你可以在管道的最后一部分使一些脚本单独运行cpan -C
并将结果保存到文件中。将所有文件放在Changes目录中,Bob是你的叔叔。这比我要做的工作要多得多。如果出现问题,我只需更新内容并稍后查看更改。
答案 1 :(得分:3)
cpan-outdated
几乎可以开箱即用:
$ cpan-outdated --compare-changes
上面会为您的所有Changes
个文件和CPAN
中的最新文件生成差异。然而,这可能有点长&如果你有很多过时的模块,那就太乱了!
幸运的是,只需要进行一些更改即可添加以下选项:
$ cpan-outdated --pkg Catalyst::View::TT --compare-changes
$ cpan-outdated --filter-pkg Catalyst --compare-changes
我的更新可以在Github上找到:http://github.com/draegtun/cpan-outdated。这是diff of my changes到tokuhirom cpan-outdated
/ I3az /