Electron 发行版

Electron 经常与 Chromium 一起发布主版本。 本文档侧重于发布排期和版本支持政策。 要更深入地了解我们的git 分支和Electron如何使用语义版本, 请查看我们的 Electron 版本文档

时间表

ElectronAlpha测试版稳定版EOLChromeNode支持
23.0.02022-Dec-012023年3月10日2023-Feb-07待定M110待定
22.0.02022年9月29日2022年10月25日2022年11月29日待定M108v16.17
21.0.02022年8月4日2022年8月30日2022年9月27日待定M106v16.16
20.0.02022年5月26日2022年6月21日2022年8月2日待定M104v16.15
19.0.02022年3月31日2022年4月26日2022年5月24日2022年11月29日M102v16.14🚫
18.0.02022年2月3日2022年3月3日2022年3月29日2022年9月27日M100v16.13🚫
17.0.02021年11月18日2022年1月6日2022年2月1日2022年8月2日M98v16.13🚫
16.0.02021年9月23日2021年10月20日2021年11月16日2022年5月24日M96v16.9🚫
15.0.02021年7月20日2021年9月01日2021年9月21日2022年5月24日M94v16.5🚫
14.0.02021年5月27日2021年8月31日2022年3月29日M93v14.17🚫
13.0.02021年3月4日2021年5月25日2022年2月1日M91v14.16🚫
12.0.02020年11月19日2021年3月2日2021年11月16日M89v14.16🚫
11.0.02020年8月27日2020年11月17日2021年8月31日M87v12.18🚫
10.0.02020年5月21日2020年8月25日2021年5月25日M85v12.16🚫
9.0.02020年2月6日2020年5月19日2021年3月2日M83v12.14🚫
8.0.02019年10月24日2020年2月4日2020年11月17日M80v12.13🚫
7.0.02019年8月1日2019年10月22日2020年8月25日M78v12.8🚫
6.0.02019年4月25日2019年7月30日2020年5月19日M76v12.14.0🚫
5.0.02019年3月22日2019年4月23日2020年2月4日M73v12.0🚫
4.0.02018年10月11日2018年2月1日2019年10月22日M69v10.11🚫
3.0.02018年6月21日2018年9月18日2019年7月30日M66v10.2🚫
2.0.02018年2月1日2018年5月01日2019年4月23日M61v8.9🚫

说明:

  • -alpha.1, -beta.1, 和 stable 的日期是我们已确定的发布日期。
  • 我们争取每周发布测试版,但我们往往比预定发布更多版本。
  • 我们致力于在这些日期发布版本,但可能因为诸如安全漏洞之类的理由调整这些排定的最后期限。

历史变化:

  • 自从Electron 5以来,Electron 一直在公开其发布日期(见博客文章)。
  • 自Electron 6以来,Electron 的大版本一直对应每个 Chromium 的大版本。 每一个 Electron 稳定版应该与 Chrome 稳定版同一天发布(见博客文章)。
  • 从 Electron 16以来, Electron 每8周发布大版本,因为Chrome 已经更改为4周的排期(见博客文章)。

Electron 发行版 - 图1Chrome 发布日期

您可以在这里参考 Chromium 的发布计划。

版本支持政策

Electron 发行版 - 图2info

从2021年9月起(Electron 15), Electron 团队会暂时支持最新的 4个 大版本中的稳定版。 这个拓展的支持预计会帮助 Electron 的开发者迁移到 新的8周发布排期, 并且持续到 Electron 19 发布。 到那时候, Electron 团队将退回到支持最新的三个大版本中的稳定版。

最新的 3 个稳定的的版本受 Electron 团队支持。 例如,如果最新版本是 6.1.x,则包括 5.0.x和 4.2.x系列的同样会被支持 我们只支持每个稳定版中最新的次要版本。 这意味着在安全修复时, 我们会修复 6.1.x,但我们不会发布 6.0.x 的新版本。

最新的稳定版会单方面接受来自 main 的所有修复,在时间和带宽允许的情况下,之前的版本会接受绝大部分的修复。 最早的受支持发布线将只接受安全修复。

Breaking API changes

当一个API的改动或移除会导致某个现有功能被破坏时,这个现有功能在被移除之前,仍然会在至少两个主要版本号内得到尽可能的支持。 比如,某个函数需要三个参数,而在主要版本10中,它被修改为需要两个参数,那么这个函数的三参数版本仍然会被支持,至少持续到主要版本12。 经过两个主要版本后,我们仍会尝试支持后向兼容,直到维护成本高得难以承受而无法继续支持。

服务终止

当一个发行分支达到了其支持周期的末尾,该序列将会在NPM中弃用,且会发布一个最终的“结束支持”版本。 这个版本将会添加一个警告以通知正在使用一个不受支持的Electron版本。

这些步骤是用于帮助应用开发者了解他们使用的分支不受支持,而不会过分打扰最终用户。

如果一个应用有特殊情况并需要保持使用一个不受支持的Electron版本,开发者可以通过忽略来自应用的package.json devDependencies的最终版本以关闭结束支持警告。 比如,1.6.x 在 1.6.18 发布后结束支持,开发者可以选择没有 devDependency 的警告 "electron": 1.6.0 - 1.6.17 的情况下留在1.6.x。