使用来自 NPM 的准确版本的 lib

Use the exact version of lib from NPM

我们在项目中使用以下库作为依赖项 https://github.com/rlidwka/sinopia

在这个库中 package.json 他们使用 express https://github.com/rlidwka/sinopia/blob/master/package.yaml

dependencies:
  express: '>=5.0.0-0 <6.0.0-0'

这很有问题,我们不能使用它,因为版本 5 (5.0.0-alpha.1) 在外部不是官方的
https://github.com/expressjs/express npm 发布的版本是 4.14 我的问题如下

  1. 以这种方式声明依赖关系有什么意义? 发布了吗?
  2. 有什么方法可以限制版本为 4.14 或其他 5 版本(不是 alfa 版本)没有对这个 repo 进行分叉?

How do I override nested NPM dependency versions? 建议使用部分 npm-shrinkwrap.json 来实现你想要的。

根据 Allow partial npm-shrinkwrap.json to only force some dependencies,这在 npm@3 中得到支持。