Electron 16.0.0
Electron 16.0.0 已发布!它包含了对 Chromium 96
、V8 9.6
和 Node.js 16.9.1
的升级。阅读下文了解更多详情!
Electron 团队很高兴宣布 Electron 16.0.0 的发布!您可以通过 npm 安装它,命令为 npm install electron@latest
,或从我们的版本发布网站下载。请继续阅读以了解有关此版本的详细信息,并欢迎分享您的任何反馈!
值得注意的变更
Electron 版本发布周期变更
自 Electron 15 起,Electron 将每 8 周发布一个新的主要稳定版本。您可以在此处阅读完整详情。
此外,直到 2022 年 5 月,Electron 支持的版本已从最新的三个版本更改为最新的四个版本。有关 Electron 版本控制的更多详细信息,请参阅我们的版本控制文档。2022 年 5 月之后,我们将恢复支持最新的三个版本。
技术栈变更
- Chromium
96
- Node.js
16.9.1
- V8
9.6
突出特性
- 现支持 WebHID API。#30213
- 在
app.requestSingleInstanceLock
中添加 data 参数,用于在不同实例间共享数据。#30891 - 将 securityOrigin 传递给媒体权限请求处理程序。#31357
- 添加
commandLine.removeSwitch
。#30933
有关新特性和变更的完整列表,请参阅 16.0.0 版本发布说明。
重大变更
以下是 Electron 16 中引入的重大变更。有关这些和未来变更的更多信息,请访问计划中的重大变更页面。
构建原生模块
如果您的项目使用 node-gyp 构建原生模块,根据您的项目设置和 Electron 版本,您可能需要使用 --force-process-config
参数来调用它。有关此变更的更多信息,请参阅#2497。
行为变更:Linux 上 crashReporter
的实现已切换到 Crashpad
Linux 上 crashReporter
API 的底层实现已从 Breakpad 更改为 Crashpad,使其与 Windows 和 Mac 保持一致。因此,子进程现在会自动受到监控,不再需要在 Node 子进程中调用 process.crashReporter.start
(也不建议这样做,因为它会启动第二个 Crashpad 报告器实例)。
Linux 上报告注解的方式也有一些细微变化,包括长值将不再在附加了 __1
、__2
等的注解之间分割,而是会被截断到(新的、更长的)注解值限制。
API 变更
Electron 16 中没有 API 变更。
已移除/已弃用变更
- 在渲染器进程中使用
desktopCapturer.getSources
API 已被弃用并将被移除。此变更提高了 Electron 应用的默认安全性。有关如何在应用中替换此 API 的详细信息,请参阅此处。
终止支持 12.x.y
根据项目的支持政策,Electron 12.x.y 已达到支持终止日期。建议开发者和应用程序升级到更新的 Electron 版本。
自 Electron 15 起,直到 2022 年 5 月的 Electron 19 版本,我们将支持的版本从最新的三个更改为最新的四个。在 Electron 19 之后,我们将恢复支持最新的三个版本。此版本支持变更是我们新的发布周期变更的一部分。请参阅此处我们的博客文章了解完整详情。
E15 (21 年 9 月) | E16 (21 年 11 月) | E17 (22 年 2 月) | E18 (22 年 3 月) | E19 (22 年 5 月) |
---|---|---|---|---|
15.x.y | 16.x.y | 17.x.y | 18.x.y | 19.x.y |
14.x.y | 15.x.y | 16.x.y | 17.x.y | 18.x.y |
13.x.y | 14.x.y | 15.x.y | 16.x.y | 17.x.y |
12.x.y | 13.x.y | 14.x.y | 15.x.y | -- |
接下来
短期内,您可以期待团队继续专注于与构成 Electron 的主要组件(包括 Chromium、Node 和 V8)的开发保持同步。虽然我们谨慎地不承诺发布日期,但我们的计划是大约每 2 个月发布一个包含这些组件新版本的新主要 Electron 版本。
您可以在此处找到 Electron 的公开时间表。
有关未来变更的更多信息,请访问计划中的重大变更页面。