node.js - 检查 npm 包与 Node 最新版本的兼容性

标签 node.js npm upgrade

TL;DR

node v4迁移到node 8时,有没有办法检查npm损坏的包

长话短说: 我有一个在 node v4 上运行的生产应用程序。我的道德值(value)观正在插入我从v4升级到v8。我知道我的代码不会损坏,但我也想确定我的包。我有暂存环境设置。我可以先在那里设置 Node 8。但我想充满信心,没有什么会被破坏。或者只是我希望过渡顺利。 这样做的最佳做法是什么?

最佳答案

如果您的项目有单元测试(您应该),如果您的测试仍然在 Node 8 上通过,那么您可能没问题。

请注意,Node 8 附带了与之捆绑的 npm v5。您需要确保在测试之前全新安装了 node_modules(即您应该 rm -rf node_modules,然后重新安装依赖项)。 npm 5 的依赖关系树比 npm 2(随 Node 4 一起提供)更扁平,因此在极少数情况下,这可能会导致事情崩溃。

当您在 Node 8 上运行全新安装时,请注意任何可能表明出现问题的警告输出,尤其是不兼容的引擎消息。

此外,npm 5 默认情况下会创建 package-lock.json 文件,您可能需要在此处更详细地了解这一点:https://stackoverflow.com/a/44297998/7127751 .

如果您想真正安全,请检查所有依赖项并查看您使用的版本是否正在 Node 8 上进行测试(即检查每个依赖项存储库中的 .travis.yml 文件)。

关于node.js - 检查 npm 包与 Node 最新版本的兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47571617/

相关文章:

javascript - 是否可以在不运行服务器的情况下像使用 PHP 文件一样使用 Node.js?

javascript - Docker-compose 找不到模块

javascript - NodeJS - 将 event.headers 转换为小写以用于 AWS

javascript - Angular 8 升级后,Angular 脚本被插入到 HTML 文档的开头

node.js - nodeJS/GitlabCI : How to serve decentralized productive application

node.js - 无法安装@angular/cli

node.js - 当设置为生产模式 : No formatters or parsers provided 时,Webpack Globalize 构建失败

node.js - npm WARN install 无法安装可选依赖项 : Unsupported

spring-boot - 从SpringFox2.x升级到SpringFox3.0开放API

git - 将 git 升级到 1.8.1.5 失败