微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否有任何编程语言或包管理器支持已安装包的一致性/融合/全局唯一性?

如何解决是否有任何编程语言或包管理器支持已安装包的一致性/融合/全局唯一性?

npm 安装包时,它会生成一个依赖树,树中的每个包都有自己的依赖树。因此,同一个包可能会在树中多次出现。获取通过传递依赖重新导出的对象时,可能会根据导出的具体路径返回不同的对象。

这在某些情况下会导致问题,因此 peer dependencies 存在,它允许应用程序的顶级指定包的单个版本,子依赖项共享这些版本。

如果每个依赖项都标记peerDependency,那么应用程序中将存在每个包的单个全局版本。

我的问题是:是否有任何语言或包管理器在任何地方强制执行类似的行为,这样任何两个共享依赖项的包都将共享该依赖项的完全相同版本?作为奖励,语言/生态系统因此而遇到了哪些成本或收益?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。