跳转到内容

版本升级

官方包

WinJS 所有的官方包目前都使用统一版本号进行发布。

包名版本
@winjs-dev/create-winNPM Version
@winner-fed/preset-vueNPM Version
@winner-fed/preset-vue2NPM Version
@winner-fed/renderer-vueNPM Version
@winner-fed/renderer-vue2NPM Version
@winner-fed/winjsNPM Version

使用 Taze

我们推荐使用 Taze 来升级 WinJS 的版本,这是一个用于升级 npm 依赖版本的 CLI 工具。

用法

运行以下命令来升级所有名称中包含 winner-fed 的依赖:

bash
npx taze --include /winner-fed/ -w

运行结果类似于:

bash
winner-fed - 3 patch

  @winner-fed/core               dev  ~2mo  ^0.9.0  ^0.9.4
  @winner-fed/plugin-vue       dev  ~2mo  ^0.9.0  ^0.9.4
  @winner-fed/plugin-vue2  dev  ~2mo  ^0.9.0  ^0.9.4

 changes written to package.json, run npm i to install updates.

你也可以调整 include 来匹配不同的包,比如仅升级 @winner-fed scope 下的包:

bash
npx taze --include /@winner-fed/ -w

选项

下面是一些使用 taze 选项的示例。

  • 在 monorepo 中,你可以添加 -r 选项来递归升级:
bash
npx taze --include /winner-fed/ -w -r
  • 添加 -l 来升级被锁定的版本:
bash
npx taze --include /winner-fed/ -w -l
  • 升级 major 版本:
bash
npx taze major --include /winner-fed/ -w

更多选项请参考 taze 文档

锁定子依赖

当项目某个子依赖出现问题,可能会导致 WinJS 或者项目工程无法更新,此时可以使用包管理器锁定子依赖版本。

pnpm

对于使用 pnpm 的项目,请在项目根目录package.json 中添加以下配置,然后重新执行 pnpm install

json
{
  "pnpm": {
    "overrides": {
      "package-name": "^1.0.0"
    }
  }
}

Yarn

对于使用 Yarn 的项目,请在项目根目录package.json 中添加以下配置,然后重新执行 yarn install

json
{
  "resolutions": {
    "package-name": "^1.0.0"
  }
}

Npm

对于使用 Npm 的项目,请在项目根目录package.json 中添加以下配置,然后重新执行 npm install

json
{
  "overrides": {
    "package-name": "^1.0.0"
  }
}

提示

对于 Monorepo 仓库,只能在项目根目录的 package.json 中锁定依赖版本,并且会影响 Monorepo 中的所有 package。

基于 MIT 许可发布