我正在使用nightmare
进行测试。运行npm审核后,我收到关于lodash原型污染的警告。我尝试通过运行npm audit fix
来解决此问题,但没有结果。之后,我尝试使用{{ 1}},但仍然得到:
--force
任何想法我该如何解决?
答案 0 :(得分:1)
npm
依赖项不会自动升级到更高的主要版本。因此,如果程序包A
依赖于程序包B
,且其版本说明为:
// A/package.js
dependencies: {
"B": "^2.1.3"
}
然后,对于任何版本2.xy,npm
将使B
保持最新,其中x> = 1;(如果x == 1,则y> = 3;如果x> 1,则y> = 0 )。
但是,如果安全修复程序发生在B
版本3.v.w中,则该安全问题将保留在您的npm
存储库中。
这里的问题是,要使用版本3.vw,您可能必须更新A
,因为可能会在2到3之间进行重大更改(即,更改了函数名称或支持某些属性已被删除。)
下面是一个react-idle-timer模块中的重大更改示例:
版本4中有一些重大更改:
IdleTimer
。除非您对shouldComponentUpdate
非常满意,否则应避免使用IdleTimer
作为包装器组件。startOnLoad
已重命名为startOnMount
,以便在React上下文中更有意义。activeAction
已重命名为onActive
。idleAction
已重命名为onIdle
。