【问题标题】:Does yarn pin specific versions for dependencies of dependencies?纱线是否为依赖项的依赖项固定特定版本?
【发布时间】:2017-11-30 04:09:02
【问题描述】:

假设我们有一个依赖 X,它本身有一个依赖 Y。X 不使用纱线,也不固定 Y 的特定版本(即 X 的 package.json 有 "Y": "^1.0.0")。 yarn 是否允许我们固定和使用特定版本的传递依赖 Y?

更多上下文: 在我们的 package.json 中,我们固定了依赖 X 的版本。但是依赖 X 有一个未固定的依赖 Y(例如 "Y": "^1.0.0"),它导出了一些 .d.ts 文件。一个新版本的 Y 出现了,它使用了一些新的 Typescript 功能,这突然破坏了我们在 package.json 中使用的 Typescript 版本的 tsc 编译。我们无法在 package.json 中固定 Y 的版本,所以这个问题是不可避免的。

【问题讨论】:

    标签: yarnpkg


    【解决方案1】:

    是的,Yarn 固定了整个依赖关系树,并保证了确定性 - 只要您使用相同版本的 yarn,您和您的队友最终将得到所有依赖项(以及所有 deps 的所有 deps)的完全相同的版本。见https://yarnpkg.com/blog/2017/05/31/determinism/。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多