Electron 发布
¥Electron Releases
Electron 经常与其他 Chromium 版本一起发布主要版本。本文档重点介绍发布节奏和版本支持政策。有关 git 分支以及 Electron 如何使用语义版本的更深入指南,请查看我们的 Electron 版本控制 文档。
¥Electron frequently releases major versions alongside every other Chromium release. This document focuses on the release cadence and version support policy. For a more in-depth guide on our git branches and how Electron uses semantic versions, check out our Electron Versioning doc.
时间线
¥Timeline
Electron | Alpha | 贝塔 | 稳定的 | 停产 | Chrome | 节点 | 支持的 |
---|---|---|---|---|---|---|---|
33.0.0 | 2024-Aug-22 | 2024-Sep-18 | 2024 年 10 月 15 日 | 2025-Apr-29 | M130 | TBD | ✅ |
32.0.0 | 2024-Jun-14 | 2024-Jul-24 | 2024 年 8 月 20 日 | 2025-Mar-04 | M128 | v20.16 | ✅ |
31.0.0 | 2024 年 4 月 18 日 | 2024 年 5 月 15 日 | 2024 年 6 月 11 日 | 2025 年 1 月 7 日 | M126 | v20.14 | ✅ |
30.0.0 | 2024 年 2 月 22 日 | 2024 年 3 月 20 日 | 2024 年 4 月 16 日 | 2024 年 10 月 15 日 | M124 | v20.11 | ✅ |
29.0.0 | 2023 年 12 月 7 日 | 2024 年 1 月 24 日 | 2024 年 2 月 20 日 | 2024 年 8 月 20 日 | M122 | v20.9 | 🚫 |
28.0.0 | 2023 年 10 月 11 日 | 2023 年 11 月 6 日 | 2023 年 12 月 5 日 | 2024 年 6 月 11 日 | M120 | v18.18 | 🚫 |
27.0.0 | 2023 年 8 月 17 日 | 2023 年 9 月 13 日 | 2023 年 10 月 10 日 | 2024 年 4 月 16 日 | M118 | v18.17 | 🚫 |
26.0.0 | 2023 年 6 月 1 日 | 2023 年 6 月 27 日 | 2023 年 8 月 15 日 | 2024 年 2 月 20 日 | M116 | v18.16 | 🚫 |
25.0.0 | 2023 年 4 月 10 日 | 2023 年 5 月 2 日 | 2023 年 5 月 30 日 | 2023 年 12 月 5 日 | M114 | v18.15 | 🚫 |
24.0.0 | 2023 年 2 月 9 日 | 2023 年 3 月 7 日 | 2023 年 4 月 4 日 | 2023 年 10 月 10 日 | M112 | v18.14 | 🚫 |
23.0.0 | 2022 年 12 月 1 日 | 2023 年 1 月 10 日 | 2023 年 2 月 7 日 | 2023 年 8 月 15 日 | M110 | v18.12 | 🚫 |
22.0.0 | 2022 年 9 月 29 日 | 2022 年 10 月 25 日 | 2022 年 11 月 29 日 | 2023 年 10 月 10 日 | M108 | v16.17 | 🚫 |
21.0.0 | 2022 年 8 月 4 日 | 2022 年 8 月 30 日 | 2022 年 9 月 27 日 | 2023 年 4 月 4 日 | M106 | v16.16 | 🚫 |
20.0.0 | 2022 年 5 月 26 日 | 2022 年 6 月 21 日 | 2022 年 8 月 2 日 | 2023 年 2 月 7 日 | M104 | v16.15 | 🚫 |
19.0.0 | 2022 年 3 月 31 日 | 2022 年 4 月 26 日 | 2022 年 5 月 24 日 | 2022 年 11 月 29 日 | M102 | v16.14 | 🚫 |
18.0.0 | 2022 年 2 月 3 日 | 2022 年 3 月 3 日 | 2022 年 3 月 29 日 | 2022 年 9 月 27 日 | M100 | v16.13 | 🚫 |
17.0.0 | 2021 年 11 月 18 日 | 2022 年 1 月 6 日 | 2022 年 2 月 1 日 | 2022 年 8 月 2 日 | M98 | v16.13 | 🚫 |
16.0.0 | 2021 年 9 月 23 日 | 2021 年 10 月 20 日 | 2021 年 11 月 16 日 | 2022 年 5 月 24 日 | M96 | v16.9 | 🚫 |
15.0.0 | 2021 年 7 月 20 日 | 2021 年 9 月 1 日 | 2021 年 9 月 21 日 | 2022 年 5 月 24 日 | M94 | v16.5 | 🚫 |
14.0.0 | -- | 2021 年 5 月 27 日 | 2021 年 8 月 31 日 | 2022 年 3 月 29 日 | M93 | v14.17 | 🚫 |
13.0.0 | -- | 2021 年 3 月 4 日 | 2021 年 5 月 25 日 | 2022 年 2 月 1 日 | M91 | v14.16 | 🚫 |
12.0.0 | -- | 2020 年 11 月 19 日 | 2021 年 3 月 2 日 | 2021 年 11 月 16 日 | M89 | v14.16 | 🚫 |
11.0.0 | -- | 2020 年 8 月 27 日 | 2020 年 11 月 17 日 | 2021 年 8 月 31 日 | M87 | v12.18 | 🚫 |
10.0.0 | -- | 2020 年 5 月 21 日 | 2020 年 8 月 25 日 | 2021 年 5 月 25 日 | M85 | v12.16 | 🚫 |
9.0.0 | -- | 2020 年 2 月 6 日 | 2020 年 5 月 19 日 | 2021 年 3 月 2 日 | M83 | v12.14 | 🚫 |
8.0.0 | -- | 2019 年 10 月 24 日 | 2020 年 2 月 4 日 | 2020 年 11 月 17 日 | M80 | v12.13 | 🚫 |
7.0.0 | -- | 2019 年 8 月 1 日 | 2019 年 10 月 22 日 | 2020 年 8 月 25 日 | M78 | v12.8 | 🚫 |
6.0.0 | -- | 2019 年 4 月 25 日 | 2019 年 7 月 30 日 | 2020 年 5 月 19 日 | M76 | v12.14.0 | 🚫 |
5.0.0 | -- | 2019 年 1 月 22 日 | 2019 年 4 月 23 日 | 2020 年 2 月 4 日 | M73 | v12.0 | 🚫 |
4.0.0 | -- | 2018 年 10 月 11 日 | 2018 年 12 月 20 日 | 2019 年 10 月 22 日 | M69 | v10.11 | 🚫 |
3.0.0 | -- | 2018 年 6 月 21 日 | 2018 年 9 月 18 日 | 2019 年 7 月 30 日 | M66 | v10.2 | 🚫 |
2.0.0 | -- | 2018 年 2 月 21 日 | 2018 年 5 月 1 日 | 2019 年 4 月 23 日 | M61 | v8.9 | 🚫 |
Electron 的官方支持政策是最新的 3 个稳定版本。我们的稳定版本和生命周期结束日期由 Chromium 确定,并且可能会发生变化。虽然我们尝试在此处经常更新计划的发布和生命周期结束日期,但如果受到上游计划更改的影响,未来日期可能会发生变化,并且可能并不总是准确反映。
¥Electron's official support policy is the latest 3 stable releases. Our stable release and end-of-life dates are determined by Chromium, and may be subject to change. While we try to keep our planned release and end-of-life dates frequently updated here, future dates may change if affected by upstream scheduling changes, and may not always be accurately reflected.
有关 Chromium 计划发布日期的明确信息,请参阅 Chromium 的公开发布时间表。
¥See Chromium's public release schedule for definitive information about Chromium's scheduled release dates.
注意:
¥Notes:
-
-alpha.1
、-beta.1
和stable
日期是我们的可靠发布日期。¥The
-alpha.1
,-beta.1
, andstable
dates are our solid release dates. -
我们努力每周发布 alpha/beta 版本,但我们发布的版本常常超出计划。
¥We strive for weekly alpha/beta releases, but we often release more than scheduled.
-
所有日期都是我们的目标,但可能有调整稳定截止日期的原因,例如安全漏洞。
¥All dates are our goals but there may be reasons for adjusting the stable deadline, such as security bugs.
历史变化:
¥Historical changes:
-
自 Electron 5 以来,Electron 一直在公布其发布日期(请参阅博客文章)。
¥Since Electron 5, Electron has been publicizing its release dates (see blog post).
-
自 Electron 6 以来,Electron 主要版本一直以其他所有 Chromium 主要版本为目标。每个 Electron 稳定版应该与 Chrome 稳定版 (请参阅博客文章) 在同一天发布。
¥Since Electron 6, Electron major versions have been targeting every other Chromium major version. Each Electron stable should happen on the same day as Chrome stable (see blog post).
-
自 Electron 16 以来,Electron 一直以 8 周的节奏发布主要版本,与 Chrome 更改为 4 周的发布节奏 (请参阅博客文章) 一致。
¥Since Electron 16, Electron has been releasing major versions on an 8-week cadence in accordance to Chrome's change to a 4-week release cadence (see blog post).
-
Electron 暂时将对 Electron 22 的支持延长至 2023 年 10 月 10 日,以支持延长 Windows 7/8/8.1 的生命周期结束
¥Electron temporarily extended support for Electron 22 until October 10, 2023, to support an extended end-of-life for Windows 7/8/8.1
版本支持政策
¥Version support policy
Electron 团队支持最新的三个稳定主要版本。例如,如果最新版本是 6.1.x,则支持 5.0.x 以及 4.2.x 系列。我们仅支持每个稳定版本系列的最新次要版本。这意味着,如果出现安全修复,6.1.x 将收到修复,但我们不会发布 6.0.x 的新版本。
¥The latest three stable major versions are supported by the Electron team. For example, if the latest release is 6.1.x, then the 5.0.x as well as the 4.2.x series are supported. We only support the latest minor release for each stable release series. This means that in the case of a security fix, 6.1.x will receive the fix, but we will not release a new version of 6.0.x.
最新的稳定版本单方面接收来自 main
的所有修复,而之前的版本在时间和带宽保证的情况下接收了绝大多数修复。最旧的受支持版本将仅直接接收安全修复程序。
¥The latest stable release unilaterally receives all fixes from main
,
and the version prior to that receives the vast majority of those fixes
as time and bandwidth warrants. The oldest supported release line will receive
only security fixes directly.
Chromium 版本支持
¥Chromium version support
Electron 的目标是 Chromium 偶数版本,每 8 周发布一次,与 Chromium 的 4 周发布时间表一致。例如,Electron 26 使用 Chromium 116,而 Electron 27 使用 Chromium 118。
¥Electron targets Chromium even-number versions, releasing every 8 weeks in concert with Chromium's 4-week release schedule. For example, Electron 26 uses Chromium 116, while Electron 27 uses Chromium 118.
Node.js 版本支持
¥Node.js version support
当 Node.js 进入 Active LTS 时,Electron 将其 main
分支升级到 Node.js 的偶数版本。时间表如下:
¥Electron upgrades its main
branch to even-number versions of Node.js when they enter Active LTS. The schedule
is as follows:
如果 Electron 最近将其 main
分支更新为 Node.js 的新主要版本,则下一个要删除的稳定分支将随新版本一起发布。
¥If Electron has recently updated its main
branch to a new major version of Node.js, the next stable
branch to be cut will be released with the new version.
Electron 的稳定版本线将在发布后接收 Node.js 的小升级和补丁升级。Node.js 的补丁升级将在 Electron 的补丁版本中发布,而 Node.js 的小升级将导致 Electron 的小版本发布。仅安全版本分支将从 Node.js 版本接收与安全相关的更改,但不会接收完整版本。
¥Stable release lines of Electron will receive minor and patch bumps of Node.js after they are released. Patch bumps to Node.js will be released in patch releases of Electron, and minor bumps to Node.js will result in a minor release of Electron. Security-only release branches will receive security-related changes from Node.js releases, but not the full release.
重大 API 更改
¥Breaking API changes
当 API 以破坏现有功能的方式更改或删除时,在删除之前,如果可能,将支持至少两个主要版本的先前功能。例如,如果一个函数采用三个参数,并且在主要版本 10 中该数量减少到两个,则三参数版本将继续工作,至少直到主要版本 12。超过两个版本的最低阈值后,我们将尝试支持两个版本以上的向后兼容性,直到维护人员觉得维护负担太高而无法继续这样做。
¥When an API is changed or removed in a way that breaks existing functionality, the previous functionality will be supported for a minimum of two major versions when possible before being removed. For example, if a function takes three arguments, and that number is reduced to two in major version 10, the three-argument version would continue to work until, at minimum, major version 12. Past the minimum two-version threshold, we will attempt to support backwards compatibility beyond two versions until the maintainers feel the maintenance burden is too high to continue doing so.
生命尽头
¥End-of-life
当发布分支到达其支持周期结束时,该系列将在 NPM 中弃用,并发布最终的支持终止版本。此版本将添加警告,告知正在使用不受支持的 Electron 版本。
¥When a release branch reaches the end of its support cycle, the series will be deprecated in NPM and a final end-of-support release will be made. This release will add a warning to inform that an unsupported version of Electron is in use.
这些步骤旨在帮助应用开发者了解他们正在使用的分支何时不受支持,但又不会过度干扰终端用户。
¥These steps are to help app developers learn when a branch they're using becomes unsupported, but without being excessively intrusive to end users.
如果应用遇到特殊情况并且需要保留在不受支持的 Electron 系列上,开发者可以通过省略应用的 package.json
devDependencies
中的最终版本来消除支持终止警告。例如,由于 1-6-x 系列随着 1.6.18 版本的支持终止而结束,开发者可以选择留在 1-6-x 系列中,而不用 devDependency
或 "electron": 1.6.0 - 1.6.17
发出警告。
¥If an application has exceptional circumstances and needs to stay
on an unsupported series of Electron, developers can silence the
end-of-support warning by omitting the final release from the app's
package.json
devDependencies
. For example, since the 1-6-x series
ended with an end-of-support 1.6.18 release, developers could choose
to stay in the 1-6-x series without warnings with devDependency
of
"electron": 1.6.0 - 1.6.17
.