`npm install @babel/cli` 说 "WARN deprecated" 用于四个模块。我该如何解决这些弃用问题?
`npm install @babel/cli` says "WARN deprecated" for four modules. How can I fix these deprecations?
我的设置
- MacOS = Catalina 10.15.4(最新版本)
- nvm = 0.35.3(最新版本)
- node.js = 12.16.3(最新的 LTS 版本)。安装在 nvm 目录中。
- npm = 6.14.4(最新版本)。安装在 nvm 目录中。
注意:usr/local
.
内没有全局安装
我的问题
我使用 npm init -y
创建我的 package.json。这里没问题。
我用npm install --save-dev @babel/core
。这里没有问题。我得到版本 7.9.6.
然后当我使用 npm install --save-dev @babel/cli
我回来了:
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
@babel/cli版本是7.8.4.
我尝试解决问题
npm install chokidar@3
给我完全相同的警告。
npm install chokidar
后跟 npm install --save-dev @babel/cli
给出了完全相同的警告。
npm upgrade chokidar
什么都没有给我。终端只是开始一个新行。
我已经安装了 xcode 的命令行工具(版本 11.4.1 - 最新的非测试版),但问题仍然存在。
我卸载了 node.js 和 npm,然后使用 nvm 重新安装。问题依旧。
我曾尝试阅读 www.babeljs.io 上的安装指南和文档,但很多信息似乎已过时 and/or 自相矛盾。我找不到任何可能讨论该问题的 youtube 视频,因为它们也已过时。 whosebug.com 上所有与此问题稍微相关的帖子也已过时。我最大的问题是试图找到没有过时的信息。
我很困惑。我正在努力思考下一步该往哪个方向努力,并尝试弄清楚如何修复这些弃用警告。
任何帮助将不胜感激。
从 7.10.3 开始,Babel 需要已弃用的 chokidar 才能为 Node 6 提供向后兼容性。
据我所知,Babel 8 将放弃对 Node 6 的支持。
有关此主题的更多信息,请参阅以下 2 个 babel 问题:
Babel issue 9981 and Babel issue 10684
关于 urix 和 resolve-url,Babel 源代码树引用了 source-map-resolve@0.5.3,后者又引用了已弃用的 urix 和 resolve-url.
如您的 post 中的警告消息所示,链接 resolve-url and urix 解释说“解决方案是使您的依赖链更新到 source-map-resolve 版本 0.6.0 或更高版本,或者切换到根本不使用 source-map-resolve 的依赖项。”但是,您是否热衷于碰碰 Babel 依赖树就是另一回事了。
然而,已弃用并不意味着损坏,因为您使用的是 Node 12.16.3 并且警告状态仅来自 Node 14+ 失败,我的期望是它们仍应在您的场景中按预期执行。
我的设置
- MacOS = Catalina 10.15.4(最新版本)
- nvm = 0.35.3(最新版本)
- node.js = 12.16.3(最新的 LTS 版本)。安装在 nvm 目录中。
- npm = 6.14.4(最新版本)。安装在 nvm 目录中。
注意:usr/local
.
我的问题
我使用 npm init -y
创建我的 package.json。这里没问题。
我用npm install --save-dev @babel/core
。这里没有问题。我得到版本 7.9.6.
然后当我使用 npm install --save-dev @babel/cli
我回来了:
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
@babel/cli版本是7.8.4.
我尝试解决问题
npm install chokidar@3
给我完全相同的警告。
npm install chokidar
后跟 npm install --save-dev @babel/cli
给出了完全相同的警告。
npm upgrade chokidar
什么都没有给我。终端只是开始一个新行。
我已经安装了 xcode 的命令行工具(版本 11.4.1 - 最新的非测试版),但问题仍然存在。
我卸载了 node.js 和 npm,然后使用 nvm 重新安装。问题依旧。
我曾尝试阅读 www.babeljs.io 上的安装指南和文档,但很多信息似乎已过时 and/or 自相矛盾。我找不到任何可能讨论该问题的 youtube 视频,因为它们也已过时。 whosebug.com 上所有与此问题稍微相关的帖子也已过时。我最大的问题是试图找到没有过时的信息。
我很困惑。我正在努力思考下一步该往哪个方向努力,并尝试弄清楚如何修复这些弃用警告。
任何帮助将不胜感激。
从 7.10.3 开始,Babel 需要已弃用的 chokidar 才能为 Node 6 提供向后兼容性。
据我所知,Babel 8 将放弃对 Node 6 的支持。 有关此主题的更多信息,请参阅以下 2 个 babel 问题: Babel issue 9981 and Babel issue 10684
关于 urix 和 resolve-url,Babel 源代码树引用了 source-map-resolve@0.5.3,后者又引用了已弃用的 urix 和 resolve-url.
如您的 post 中的警告消息所示,链接 resolve-url and urix 解释说“解决方案是使您的依赖链更新到 source-map-resolve 版本 0.6.0 或更高版本,或者切换到根本不使用 source-map-resolve 的依赖项。”但是,您是否热衷于碰碰 Babel 依赖树就是另一回事了。
然而,已弃用并不意味着损坏,因为您使用的是 Node 12.16.3 并且警告状态仅来自 Node 14+ 失败,我的期望是它们仍应在您的场景中按预期执行。