【问题标题】:check npm packages compatibility with node latest version检查 npm 包与 node 最新版本的兼容性
【发布时间】:2018-05-14 06:34:15
【问题描述】:

TL;DR

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

长篇大论: 我有一个在 node v4 上运行的生产应用程序。我的道德价值观正在推动我从 v4 升级到 v8。我知道我的代码不会中断,但我也想确定我的包。我有 staging env 设置。我可以先在那里设置node 8。然而我想要完全自信,没有什么会破裂。或者只是我希望过渡顺利。 这样做的最佳做法是什么?

【问题讨论】:

    标签: node.js npm upgrade


    【解决方案1】:

    如果你的项目有单元测试(你应该),如果你的测试仍然在 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

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

    【讨论】:

    • 同意测试是确保兼容性的唯一方法。我使用并喜欢npmjs.com/package/npm-check,但这只会让您知道您的软件包是否已过期,而不是您的代码已损坏。
    猜你喜欢
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    • 2019-01-04
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-14
    相关资源
    最近更新 更多