npm WARN deprecated xxx:我该怎么办?
npm WARN deprecated xxx: what should I do?
几年来我一直在使用 grunt,而且我一直看到如下警告:
npm WARN deprecated win-spawn@2.0.0: use [cross-spawn](https://github.com/IndigoUnited/node-cross-spawn) or [cross-spawn-async](https://github.com/IndigoUnited/node-cross-spawn-async) instead.
npm WARN deprecated lodash@0.9.2: lodash@<2.0.0 is no longer maintained. Upgrade to lodash@^3.0.0
npm WARN deprecated lodash@1.0.2: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v6.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated lodash@2.2.1: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
我的项目实际上仍然有效,即使有这些警告。 lodash
通常是那个总是给我警告的人,从第一天开始。
这是产生这些错误的 package.json 文件:
{
"name": "xxx",
"version": "0.1.1",
"devDependencies": {
"autoprefixer": "^6.2.3",
"cssnano": "^3.4.0",
"grunt": "^0.4.5",
"grunt-browser-sync": "^1.5.3",
"grunt-contrib-clean": "^1.0.0",
"grunt-contrib-concat": "~0.5.0",
"grunt-contrib-copy": "^1.0.0",
"grunt-contrib-htmlmin": "^0.6.0",
"grunt-contrib-imagemin": "^1.0.0",
"grunt-contrib-sass": "~0.7.4",
"grunt-contrib-uglify": "~0.5.1",
"grunt-contrib-watch": "~0.6.1",
"grunt-critical": "^0.2.0",
"grunt-delete-sync": "0.0.2",
"grunt-newer": "^0.7.0",
"grunt-postcss": "^0.7.1",
"grunt-processhtml": "^0.3.13"
}
}
我想某些模块或依赖项已过时但是...
1) 为什么它仍然有效?忽略警告是否安全?
2) 我怎么知道哪个模块已经过时了,我应该怎么做?
已弃用意味着它不会进一步开发,但也不会再改变。如果一个模块依赖于一个有错误的已弃用包,唯一的解决方法是升级依赖项。但由于没有任何改变,它会一直工作。
几年来我一直在使用 grunt,而且我一直看到如下警告:
npm WARN deprecated win-spawn@2.0.0: use [cross-spawn](https://github.com/IndigoUnited/node-cross-spawn) or [cross-spawn-async](https://github.com/IndigoUnited/node-cross-spawn-async) instead.
npm WARN deprecated lodash@0.9.2: lodash@<2.0.0 is no longer maintained. Upgrade to lodash@^3.0.0
npm WARN deprecated lodash@1.0.2: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v6.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated lodash@2.2.1: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
我的项目实际上仍然有效,即使有这些警告。 lodash
通常是那个总是给我警告的人,从第一天开始。
这是产生这些错误的 package.json 文件:
{
"name": "xxx",
"version": "0.1.1",
"devDependencies": {
"autoprefixer": "^6.2.3",
"cssnano": "^3.4.0",
"grunt": "^0.4.5",
"grunt-browser-sync": "^1.5.3",
"grunt-contrib-clean": "^1.0.0",
"grunt-contrib-concat": "~0.5.0",
"grunt-contrib-copy": "^1.0.0",
"grunt-contrib-htmlmin": "^0.6.0",
"grunt-contrib-imagemin": "^1.0.0",
"grunt-contrib-sass": "~0.7.4",
"grunt-contrib-uglify": "~0.5.1",
"grunt-contrib-watch": "~0.6.1",
"grunt-critical": "^0.2.0",
"grunt-delete-sync": "0.0.2",
"grunt-newer": "^0.7.0",
"grunt-postcss": "^0.7.1",
"grunt-processhtml": "^0.3.13"
}
}
我想某些模块或依赖项已过时但是...
1) 为什么它仍然有效?忽略警告是否安全? 2) 我怎么知道哪个模块已经过时了,我应该怎么做?
已弃用意味着它不会进一步开发,但也不会再改变。如果一个模块依赖于一个有错误的已弃用包,唯一的解决方法是升级依赖项。但由于没有任何改变,它会一直工作。