perl – 我为什么不更新所有的CPAN模块?

前端之家收集整理的这篇文章主要介绍了perl – 我为什么不更新所有的CPAN模块?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我认为一般来说定期更新计算机上的所有软件是个好主意.由于CPAN模块不是由我的包管理器管理的,我想我应该每隔一段时间做一次cpan -u.只有在执行完之后我才会阅读关于此的手册页注释:

-u  Upgrade all installed modules. Blindly doing this can really break
   things,so keep a backup.

>为什么这会打破任何东西?而且我应该如何保持我的CPAN模块更新;我是否需要跟踪所有手动安装的模块(cpan似乎不这样做)并且只定期更新这些模块?我手动安装的模块的依赖关系怎么样?
>为什么cpan -u升级了大约15分钟的东西,即使我没有安装一个CPAN模块?
>我可以恢复cpan -u吗?为此删除〜/ .cpan是否足够?

解决方法

Why should this break anything?

它不应该,但复杂的系统是复杂的,有时事情会破坏(例如,如果模块使用非向后兼容的更改进行更新,或者依赖于具有仅与特定依赖性结合出现的错误的C库).

And how should I keep my CPAN modules up to date otherwise;

只要保持备份以防万一.

Why did cpan -u upgrade stuff for ~15min even though I haven’t installed a single CPAN module?

Perl随large collection of modules一起发布,您的发行版可能已安装其他模块.

Can I revert the cpan -u?

您可以使用文档建议您使用的备份覆盖它.

Is it enough to delete ~/.cpan for this?

不可以.安装程序工具使用该目录来缓存有关可用模块的数据,存储源代码以及保存构建工件.已安装的文件像任何其他库一样写入您的lib.

猜你在找的Perl相关文章