题
从我的理解来看,Perl传统上只包括核心功能,人们安装了其他库来完成各种有用的(有时是非常基本的)事情。但是在某个时候,有默认情况下将带有Perl的“核心库”,因此您可以在不安装它们的情况下使用这些库。
来自Python,我很好奇如何管理。具体来说:
- 如何选择图书馆?
- 图书馆是否仍然有自己的版本编号和发布时间表?
- 使用这些库时,您可以保证什么样的落后兼容性?
- 在系统中升级或降级这些库是否常见?这是在整个系统范围内还是更具体地完成?
- 如果有一个需要更改API的错误修复程序,那将如何发生?
- 这些核心库如何添加功能(如果是的话)?
解决方案
- 当前,仅引导/安装其他库所需的库进入 核心列表.
- 有些仅在perl git存储库中。有些是CPAN和回购中的双重生命。有时,错误将在存储库中修复,并且更改将退回到CPAN版本。有时,CPAN上有一个新版本,并且在模块中的Perl Vasiner检查中有一个新版本。
- 您可以依靠核心模块。在删除一个人之前,有一个非常漫长的折旧时间潘,最近的突出例子是
Switch
. - 包装器(例如为Linux发行版构建RPM的人)永远无法正确解决这一问题;包括路径的错误顺序(
@INC
)不是他们的错, 最后用5.12固定. 。这就是建议汇编自己的perl而不是与系统安装混乱的原因。使用5.12,您应该只使用CPAN安装核心模块的升级版本,并且它将其额外安装到带有系统的运输量中,但是由于新的核心模块是在旧的旧路径中,因此一个人在你时被加载use
/require
它。 - 布置 Perlpolicy.
- 为其编程功能和测试,记录事物,然后在CPAN上释放或使维护者应用更改集。伴随着讨论 P5P.
不隶属于 StackOverflow