發布流程

V8 發布流程與 Chrome 緊密連結。V8 團隊使用 Chrome 的四個發布頻道將新版本推送到使用者端。

如果您想查詢 Chrome 發布中所包含的 V8 版本,可以查看 Chromiumdash。對於每個 Chrome 發布,V8 存放庫中會建立一個獨立的分支,以簡化追溯,例如 Chrome M121

Canary 發布 #

每天都會透過 Chrome 的 Canary 頻道 將新的 Canary 版本推送到使用者端。通常,可交付的版本是 main 中最新、足夠穩定的版本。

Canary 的分支通常如下所示

Dev 發布 #

每週都會透過 Chrome 的 Dev 頻道 將新的 Dev 版本推送到使用者端。通常,可交付的版本包含 Canary 頻道上最新、足夠穩定的 V8 版本。

Beta 發布 #

大約每 2 週會建立一個新的主要分支,例如 Chrome 94。這會與 Chrome 的 Beta 頻道 建立同步。Chrome Beta 會固定在 V8 分支的開頭。大約 2 週後,該分支會升級為穩定版。

變更只會精選到分支上,以穩定版本。

Beta 的分支通常如下所示

refs/branch-heads/12.1

它們基於 Canary 分支。

穩定版發布 #

大約每 4 週會執行新的主要穩定版發布。由於最新的 Beta 分支會直接升級為穩定版,因此不會建立特殊分支。此版本會透過 Chrome 的穩定版頻道 推送到使用者端。

穩定版發布的分支通常如下所示

refs/branch-heads/12.1

它們是升級(重複使用)的 Beta 分支。

API #

Chromiumdash 也提供 API 來收集相同資訊

https://chromiumdash.appspot.com/fetch_milestones (to get the V8 branch name e.g. refs/branch-heads/12.1)
https://chromiumdash.appspot.com/fetch_releases (to get the the V8 branch git hash)

下列參數很有用
mstone=121
頻道=穩定版、金絲雀版、測試版、開發版
平台=Mac、Windows、Lacros、Linux、Android、網頁檢視等。

我應該在我的應用程式中內嵌哪個版本? #

Chrome 穩定版頻道使用的相同分支的最新版本。

我們經常將重要的錯誤修正回歸併入穩定版分支,因此如果您重視穩定性、安全性及正確性,您也應該包含這些更新,這就是我們推薦「分支的最新版本」,而不是確切版本的原因。

一旦新的分支被提升為穩定版,我們就會停止維護前一個穩定版分支。這每四週發生一次,因此您應該準備至少這麼頻繁地更新。

相關: 我應該使用哪個 V8 版本?