跳到主要内容

发布流程

V8 的发布流程与 Chrome 的发布流程紧密相关。V8 团队使用 Chrome 的四个发布渠道向用户推送新版本。

如果您想查找某个 Chrome 版本中包含的 V8 版本,可以查看 Chromiumdash。对于每个 Chrome 版本,在 V8 仓库中都会创建一个独立的分支,以便于回溯,例如 Chrome M121

Canary 发布版本

每天会通过 Chrome 的 Canary 渠道向用户推送一个新的 Canary 构建版本。通常,其交付内容是来自 main 的最新且足够稳定的版本。

Canary 的分支通常如下所示:

开发 (Dev) 发布版本

每周会通过 Chrome 的 Dev 渠道向用户推送一个新的 Dev 构建版本。通常,其交付内容包括 Canary 渠道上最新且足够稳定的 V8 版本。

测试 (Beta) 发布版本

大约每两周会创建一个新的主要分支,例如 Chrome 94。这与 Chrome 的 Beta 渠道 的创建同步进行。Chrome Beta 固定于 V8 分支的头部。在大约两周后,该分支将被提升为稳定版本。

仅选择性地将更改合并到该分支,以稳定版本。

Beta 的分支通常如下所示:

refs/branch-heads/12.1

它们基于 Canary 分支。

稳定 (Stable) 发布版本

大约每四周会发布一个新的主要稳定版本。不会创建特殊的分支,因为最新的 Beta 分支会被直接提升为稳定版本。此版本通过 Chrome 的稳定渠道 推送给用户。

稳定发布版本的分支通常如下所示:

refs/branch-heads/12.1

它们是被提升(重用)的 Beta 分支。

API

Chromiumdash 还提供了一个 API 用于收集相同的信息:

https://chromiumdash.appspot.com/fetch_milestones (获取 V8 的分支名称,例如 refs/branch-heads/12.1)
https://chromiumdash.appspot.com/fetch_releases (获取 V8 分支的 git 哈希值)

以下参数是有用的: mstone=121 channel=Stable,Canary,Beta,Dev platform=Mac,Windows,Lacros,Linux,Android,Webview,etc.

我应该嵌入哪个版本到我的应用中?

与 Chrome 稳定渠道使用的分支相同的分支头。

我们通常会将重要的错误修复回合并到稳定分支,因此如果您关心稳定性、安全性和正确性,也应该包含这些更新——这就是为什么我们推荐“分支的头部”,而不是一个确切的版本。

一旦一个新分支被提升为稳定版本,我们就会停止维护之前的稳定分支。这大约每四周发生一次,所以您应该准备好至少这么频繁地更新。

相关链接: 我应该使用哪个 V8 版本?