Electron 版本发布
Electron 经常会与每个其他 Chromium 版本一起发布主要版本。本文档重点介绍发布节奏和版本支持策略。有关我们 git 分支以及 Electron 如何使用语义版本的更深入指南,请查看我们的Electron 版本控制 文档。
时间线
Electron | Alpha | Beta | 稳定版 | EOL | Chrome | Node | 支持 |
---|---|---|---|---|---|---|---|
33.0.0 | 2024年8月22日 | 2024年9月18日 | 2024年10月15日 | 2025年4月29日 | M130 | 待定 | ✅ |
32.0.0 | 2024年6月14日 | 2024年7月24日 | 2024年8月20日 | 2025年3月4日 | 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 决定,可能会发生变化。虽然我们尝试在此处经常更新我们的计划发布和生命周期结束日期,但如果受到上游计划变更的影响,未来日期可能会更改,并且可能无法始终准确反映。
请参阅Chromium 的公开发布计划,以获取有关 Chromium 计划发布日期的权威信息。
备注
-alpha.1
、-beta.1
和stable
日期是我们确定的发布日期。- 我们努力每周发布 alpha/beta 版本,但我们经常发布超出计划的版本。
- 所有日期都是我们的目标,但可能存在调整稳定截止日期的原因,例如安全漏洞。
历史变更
- 从 Electron 5 开始,Electron 一直在公布其发布日期(查看博客文章)。
- 从 Electron 6 开始,Electron 主要版本的目标是每个其他 Chromium 主要版本。每个 Electron 稳定版都应该与 Chrome 稳定版在同一天发布(查看博客文章)。
- 从 Electron 16 开始,Electron 已根据 Chrome 更改为 4 周发布节奏,以 8 周的节奏发布主要版本(查看博客文章)。
- Electron 暂时将 Electron 22 的支持期限延长至 2023 年 10 月 10 日,以支持 Windows 7/8/8.1 的延长生命周期。
版本支持策略
Electron 团队支持最新的三个稳定版主要版本。例如,如果最新版本是 6.1.x,则支持 5.0.x 以及 4.2.x 系列。我们仅支持每个稳定版本系列的最新次要版本。这意味着在安全修复的情况下,6.1.x 将接收修复,但我们不会发布 6.0.x 的新版本。
最新的稳定版本单方面接收来自 main
的所有修复,并且之前的版本会在时间和带宽允许的情况下接收绝大多数修复。最旧的支持版本线将仅接收直接的安全修复。
Chromium 版本支持
Chromium 的公开发布计划在此处。
Electron 以 Chromium 偶数版本为目标,每 8 周发布一次,与 Chromium 的 4 周发布计划同步进行。例如,Electron 26 使用 Chromium 116,而 Electron 27 使用 Chromium 118。
Node.js 版本支持
当 Node.js 的偶数版本进入 Active LTS 时,Electron 会将其 main
分支升级到这些版本。计划如下
如果 Electron 最近将其 main
分支更新到 Node.js 的新主要版本,则下一个要切出的稳定分支将与新版本一起发布。
Electron 的稳定版本线将在发布后接收 Node.js 的次要和补丁更新。Node.js 的补丁更新将在 Electron 的补丁版本中发布,而 Node.js 的次要更新将导致 Electron 的次要版本发布。仅安全版本的发布分支将接收来自 Node.js 版本的安全相关更改,但不会接收完整版本。
重大 API 变更
当 API 以破坏现有功能的方式更改或移除时,在移除之前,只要可能,将至少支持先前功能两个主要版本。例如,如果某个函数采用三个参数,并且在主要版本 10 中将该数字减少到两个,则三个参数版本将继续工作,至少到主要版本 12。超过最少两个版本的阈值后,我们将尝试支持超出两个版本的向后兼容性,直到维护人员认为继续这样做带来的维护负担过高为止。
生命周期结束
当发布分支达到其支持周期的结束时,该系列将在 NPM 中被弃用,并将发布最终的支持结束版本。此版本将添加警告以告知正在使用不受支持的 Electron 版本。
这些步骤旨在帮助应用程序开发人员了解他们正在使用的分支何时变得不受支持,但不会过度干扰最终用户。
如果应用程序存在特殊情况并且需要保留在不受支持的 Electron 系列中,开发人员可以通过从应用程序的 package.json
devDependencies
中省略最终版本来取消支持结束警告。例如,由于 1-6-x 系列以支持结束的 1.6.18 版本结束,因此开发人员可以选择保留在 1-6-x 系列中,而不会出现 devDependency
为 "electron": 1.6.0 - 1.6.17
的警告。