我的一个同事的 PR 包含一个 package-lock.json 更新,其中添加了 "optional": true
:
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
即使在谷歌搜索之后,我也不确定这意味着什么。有人可以解释一下吗?
最佳答案
来自 https://docs.npmjs.com/files/package-lock.json#optional :
If true then this dependency is either an optional dependency ONLY of the top level module or a transitive dependency of one. This is false for dependencies that are both an optional dependency of the top level and a transitive dependency of a non-optional dependency of the top level.
合并此更改是安全的。
您看到此更改的原因很可能是因为 npm slightly changed how package-lock.json is structured in version 6.6 .你的伙伴基本上是在先前使用 npm 6.5- 生成的 package-lock.json 上使用 npm 6.6+ 运行 npm install
。
您应该能够通过确保团队中的每个人都使用最新版本的 npm
来避免此类问题。
关于node.js - package-lock.json 文件,包含 "optional": true 的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54411377/