跳至主要内容

Electron 7.0.0

·4 分钟阅读

Electron 7.0.0 已发布! 它包括升级到 Chromium 78、V8 7.8 和 Node.js 12.8.1。 我们添加了 Arm 64 上的 Windows 版本,更快的 IPC 方法,新的 nativeTheme API 等等!


Electron 团队很高兴地宣布 Electron 7.0.0 发布! 您可以通过 npm install electron@latest 使用 npm 安装它,或从我们的发布网站下载。 该版本包含升级、修复和新功能。 我们迫不及待地想看到您用它们构建什么! 继续阅读以了解此版本的详细信息,并请分享您的任何反馈!

重要更改

  • 堆栈升级

    堆栈Electron 6 中的版本Electron 7 中的版本新功能
    Chromium76.0.3809.14678.0.3905.177, 78
    V87.67.87.7, 7.8
    Node.js12.4.012.8.112.5, 12.6, 12.7, 12.8, 12.8.1
  • 增加了 Windows on Arm (64 位) 版本。 #18591, #20112

  • 添加了 ipcRenderer.invoke()ipcMain.handle() 用于异步请求/响应式 IPC。 强烈建议使用这些方法而不是 remote 模块。 有关更多信息,请参阅这篇"Electron 的 'remote' 模块被认为有害"博客文章。 #18449

  • 添加了 nativeTheme API,用于读取和响应操作系统主题和配色方案的变化。 #19758, #20486

  • 切换到新的 TypeScript 定义生成器。 结果定义更精确;因此如果您的 TypeScript 构建失败,这可能是原因。 #18103

有关更详细的更改列表,请参阅7.0.0 发布说明

重大更改

有关这些和未来更改的更多信息,请参见计划中的重大更改页面。

  • 移除了弃用的 API
    • 现在使用 Promises 的函数的基于回调的版本。 #17907
    • Tray.setHighlightMode() (macOS)。 #18981
    • app.enableMixedSandbox() #17894
    • app.getApplicationMenu(),
    • app.setApplicationMenu(),
    • powerMonitor.querySystemIdleState(),
    • powerMonitor.querySystemIdleTime(),
    • webFrame.setIsolatedWorldContentSecurityPolicy(),
    • webFrame.setIsolatedWorldHumanReadableName(),
    • webFrame.setIsolatedWorldSecurityOrigin() #18159
  • Session.clearAuthCache() 不再允许过滤已清除的缓存条目。 #17970
  • macOS 上的原生界面 (菜单、对话框等) 现在会自动匹配用户机器上的深色模式设置。 #19226
  • 更新了 electron 模块以使用 @electron/get。 最低支持的 Node 版本现在是 Node 8。 #18413
  • 文件 electron.asar 不再存在。 任何依赖其存在的打包脚本都应更新。 #18577

停止支持 4.x.y

Electron 4.x.y 已达到停止支持状态,符合项目支持策略。 建议开发者和应用程序升级到更新的 Electron 版本。

应用反馈计划

我们继续使用我们的应用反馈计划进行测试。 参与此计划的项目在其应用上测试 Electron 测试版;作为回报,他们发现的新错误将优先在稳定版中修复。 如果您想参与或了解更多信息,请查看我们关于该计划的博客文章

下一步

短期内,您可以期待团队继续专注于跟上构成 Electron 的主要组件(包括 Chromium、Node 和 V8)的开发。 尽管我们谨慎地不对发布日期做出承诺,但我们的计划是大约每季度发布带有这些组件新版本的 Electron 新主要版本。暂定的 8.0.0 计划列出了 Electron 8 开发生命周期中的关键日期。 此外,请参阅我们的版本控制文档,了解有关 Electron 版本控制的更详细信息。

有关 Electron 即将发布的版本中计划的重大更改的信息,请参阅我们的计划的重大更改文档