Yarn-如何将 package.json 中的每个依赖项更新到最新版本?

我有一个反应应用程序与废弃的依赖关系。为了使其正常工作,我必须将依赖项更新到它们更新的(但是稳定的)版本。

根据 这个股权溢出线程,要将 package.json 中的依赖项更新到最新版本,Npm-检查-更新是 npm 的最佳选项。然而,我使用纱线的包装管理。在纱线中是否存在等效的 npm-check-update。因此,我使用一个包管理器来管理我的依赖项。

107107 次浏览

yarn upgrade-interactive --latest

但是你必须有一个 yarn.lock文件之前这样做。如果使用 npm,则必须首先删除 package-lock.json。然后运行 yarn来创建结构。然后你可以做 upgrade-interactive。如果没有这一点,yarn显示升级,但没有变化和效果的 package.json

您可以尝试使用这个 npm 包 yarn-upgrade-all。这个包将删除 package.json中的每个包,并再次添加它,这将更新到最新版本。

安装:

npm install -g yarn-upgrade-all

用途: 在您的项目目录中运行:

yarn yarn-upgrade-all

您可以使用以下命令将单个软件包升级到最新的主版本:

yarn upgrade <package-name> --latest

为我工作的是 作者:@Andrew Zolotarev,它使用

npx yarn-upgrade-all

如果您希望将包添加到 package.json 以进行开发协作,那么可以使用

yarn add yarn-upgrade-all -D
yarn yarn-upgrade-all

顺便说一下,软件包使用这个命令(重新安装所有软件包)

yarn install package1 package2 packageN

如果希望用纱线更新包并相应地更新 package.json,

  1. 安装 syncyarnlock-yarn global add syncyarnlock
  2. 更新软件包 -yarn upgradeyarn upgrade --latest
  3. 将 yarn.lock 的更新版本同步到 package.json-syncyarnlock -s

已经过时了

yarn outdated

Upgrade all dependencies to latest

这将升级到最新版本,不管包是否稳定,也不管包之间的版本约束如何。

yarn upgrade --latest

纱线文件

With Yarn v2 and v3 (Berry)

你必须先安装适当的插件:

yarn plugin import interactive-tools

然后执行

yarn upgrade-interactive

资料来源: https://yarnpkg.com/cli/upgrade-interactive

Npm-check-update 完全兼容纱线。只需在项目目录中运行 npx npm-check-updates

npm-check-updates是一个经过战斗考验的,有8年历史的 很有效库。它提供了交互模式和博士模式,用于自动运行测试和识别失败的升级。

Disclaimer: I am the main contributor of npm-check-updates.

npm-check-updates - default output

互动 + 群组模式:

npm-check-updates - interactive mode

For the latest versions of yarn (for me it's 3.2.2)

yarn up --interactive

详情请参阅 官方文件