package - 是否有任何编程语言或包管理器支持已安装包的一致性/融合/全局唯一性?
问题描述
当npm安装包时,它会生成一个依赖树,树中的每个包都有自己的依赖树。因此,同一个包可能会在树中出现多次。在获取通过传递依赖重新导出的对象时,可能会根据所遵循的导出的特定路径返回不同的对象。
这在某些情况下会导致问题,因此存在对等依赖项,这允许应用程序的顶层指定包的单个版本,这些子依赖项共享。
如果每个依赖项都标记为peerDependency
,那么每个包的单个全局版本将存在于应用程序中。
我的问题是:是否有任何语言或包管理器在任何地方强制执行类似的行为,以便共享依赖项的任何两个包将共享该依赖项的完全相同版本?作为奖励,语言/生态系统因此而遇到了哪些成本或收益?
解决方案
推荐阅读
- nested - 如何在 Football API 中使用嵌套包含?(解决了)
- c# - 将字符串转换为作为参数传递给 AjaxManager 的数组
- oracle - 错误PLSQL创建过程异常
- apache-kafka - kafka 0.10.2 描述 logdir(每个代理的分区信息)
- sparql - 在 Wikidata 查询服务上获取具有多个可选限定符的多个可选属性
- node.js - NodeJS-PassportJS 给出特定的密码
- html - RMarkdown - 有没有办法在每个标签集之后轻松添加空间?
- c# - c#将资源文件另存为.resx xml文件报错
- python - scikit IterativeImputer 中每一列的 max_value 和 min_value
- javascript - Vue 转换不适用于具有可重用组件的路由器视图