【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Electron 6.0.0 发布了,带来 4 项重大改进!

  • 2019-07-31
  • 本文字数:1931 字

    阅读完需:约 6 分钟

Electron 6.0.0发布了,带来4项重大改进!

Electron 团队刚刚发布了 Electron 6.0.0。你可以通过 npm install electron@latest 安装或从发布网站下载。新版本包含许多升级、修复和一些新功能。

新内容

今天 Electron 项目第一次在发布 Electron 稳定版的同日发布对应的Chrome稳定版


Electron 的大部分功能都是由 Chromium、Node.js 和 V8 的核心组件提供的。Electron 与这些项目保持同步,为用户提供最新的 JavaScript 功能、性能改进和安全修复程序。这些包在 Electron 6 中都有主要版本更新:



此版本还包括对 Electron API 的改进。完整列表可参阅发行说明,下面挑一些亮点介绍:

Promise 支持

Electron 6.0 继续发展从 5.0 版开始的现代化改进,改善对 Promise 的支持。


这些函数现在返回 Promise 并仍然支持旧的基于回调的调用:


  • contentTracing.getCategories() #16583

  • contentTracing.getCategories() #16583

  • contentTracing.getTraceBufferUsage() #16600

  • contents.executeJavaScript() #17312

  • cookies.flushStore() #16464

  • cookies.get() #16464

  • cookies.remove() #16464

  • cookies.set() #16464

  • dialog.showCertificateTrustDialog() #17181

  • inAppPurchase.getProducts() #17355

  • inAppPurchase.purchaseProduct() #17355

  • netLog.stopLogging() #16862

  • session.clearAuthCache() #17259

  • session.clearCache() #17185

  • session.clearHostResolverCache() #17229

  • session.clearStorageData() #17249

  • session.getBlobData() #17303

  • session.getCacheSize() #17185

  • session.resolveProxy() #17222

  • session.setProxy() #17222

  • webContents.hasServiceWorker() #16535

  • webContents.printToPDF() #16795

  • webContents.savePage() #16742

  • webFrame.executeJavaScript() #17312

  • webFrame.executeJavaScriptInIsolatedWorld() #17312

  • webviewTag.executeJavaScript() #17312


这些函数现在有两种形式,同步和基于 Promise 的异步:


  • dialog.showMessageBox()/dialog.showMessageBoxSync() #17298

  • dialog.showOpenDialog()/dialog.showOpenDialogSync() #16973

  • dialog.showSaveDialog()/dialog.showSaveDialogSync() #17054


这些函数现在返回 Promise:


Electron Helper (Renderer).app、Electron Helper (GPU).app 和 Electron Helper (Plugin).app

为了启用强化运行时来限制可写可执行内存和加载由其他团队 ID 签名的代码等,需要向 Helper 授予特殊代码签名权利。


为了将这些权利限定在需要它们的流程类型上,Chromium 添加了三个新的Helper应用程序变体:一个用于渲染器(Electron Helper(Renderer).app),一个用于 GPU 进程(Electron Helper(GPU).app) ,还有一个用于插件(Electron Helper(Plugin).app)。


使用 electron-osx-sign 对其 Electron 应用签名(codesign)的开发者不应该对其构建逻辑进行任何更改。如果你使用自定义脚本对应用签名,则应确保三个新的 Helper 应用程序已正确签名。


为了使用这些新 helper 正确打包你的应用程序,你需要使用 electron-packager@14.0.4 或更高版本。如果你使用的是 electron-builder,则需参阅此处获取支持。

重大改进

  • 此版本还为今后的需求打下了基础,要求加载在渲染器进程内的原生 Node 模块要么是N-API,要么Context Aware。这一改进可带来更高的性能、更强的安全性和更少的维护工作量。详细信息参阅此处。此更改预计将在 Electron v11 中完成。

  • net.IncomingMessage 标头稍微改动,以更好地匹配Node.js行为,特别是 set-cookie 的值以及重复标头的处理方式。#17517

  • shell.showItemInFolder()现在返回 void 并且是异步调用。#17121

  • 应用程序现在必须在使用 app.getPath(‘log’)之前调用新函数 app.setAppsLogPath()来显式设置日志路径。#17841

3.x.y 支持终止

根据官方支持政策,3.x.y 的生命周期已达终点。官方鼓励开发人员和应用程序升级到更新版本的 Electron。

应用反馈计划

官方继续使用应用反馈计划进行测试。参与此计划的项目会在其应用上测试 Electron 测试版;作为回报,他们发现的新错误会在稳定版本中优先处理。如果你想参与或了解更多信息,请查看关于该计划的博客文章(https://electronjs.org/blog/app-feedback-program)。

未来计划

短期来看,官方团队会继续升级 Electron 的主要组件,包括 Chromium、Node 和 V8。团队计划大约每季度发布一次新版本,每次都会升级各大组件。7.0.0版本的暂定计划列出了 Electron 7 开发周期中的关键时点。还可参阅官方版本控制文档,获取有关 Electron 版本的更多信息。


关于未来的 Electron 版本中计划的重大变更,请参阅重大变更计划文档


英文原文:http://electronjs.org/blog/electron-6-0


2019-07-31 18:437368

评论

发布
暂无评论
发现更多内容

apk瘦身;如何缩小体积呢?这篇文章来教你

爱好编程进阶

Java 程序员 后端开发

Docker下的Spring Cloud三部曲之一:极速体验

程序员欣宸

Java Spring Cloud 5月月更

用户行为分析模型实践(二)—— 漏斗分析模型

vivo互联网技术

大数据 数据分析 Clickhouse

Day301

爱好编程进阶

Java 程序员 后端开发

Python 操作 Excel 第3篇博客,python openpyxl 模块一文打通

梦想橡皮擦

5月月更

MongoDB 入门教程系列之三:使用 Restful API 操作 MongoDB

Jerry Wang

数据库 mongodb 分布式数据库 分布式数据库mongodb 5月月更

10-2 5-2 查询至少生产两种不同的计算机(PC或便携式电脑)且机器速度至少为133的厂商 (20 分)(思路加详解+测试用例

爱好编程进阶

程序员 后端开发

AQS中那些不得不说的理论知识

爱好编程进阶

Java 程序员 后端开发

Nginx 如何将所有 HTTP 的流量转移到 HTTPS

HoneyMoose

C语言_Linux基本命令与C语言基础

DS小龙哥

5月月更

15-拦截器

爱好编程进阶

Java 程序员 后端开发

企评家,打造专业的企业大数据SaaS平台

企评家

企业大数据 企评家 企业成长性评价

Day141

爱好编程进阶

Java 程序员 后端开发

【Go实现】实践GoF的23种设计模式:建造者模式

元闰子

Go 设计模式 建造者模式

MongoDB 入门教程系列之二:使用 Spring Boot 操作 MongoDB

Jerry Wang

node.js 数据库 mongodb 分布式数据库 5月月更

2021-6-1【利用指针方法求数组的最大值和最小值】

爱好编程进阶

Java 程序员 后端开发

320000字2021春招高频面试真题汇总

爱好编程进阶

Java 程序员 后端开发

50道大厂经典Spring面试题,你能答出来几题?

爱好编程进阶

Java 程序员 后端开发

Dart9

爱好编程进阶

Java 程序员 后端开发

从零构建物联网平台-给个理由先

老任物联网杂谈

物联网平台

聊聊 C 语言和 ABAP 这两门编程语言的关系

Jerry Wang

编程语言 C语言 SAP abap 5月月更

网站开发进阶(二十六)JavaScript 实现页面刷新方法汇总

No Silver Bullet

JavaScript 页面刷新 5月月更

Dubbo实战案例01【需求分析及项目创建】

爱好编程进阶

Java 程序员 后端开发

2021 年最新版 68道Redis面试题,20000字,赶紧收藏起来备用

爱好编程进阶

Java 程序员 后端开发

2个不同的对象集合如何取交集和差集

爱好编程进阶

Java 程序员 后端开发

BATJ内部Java求职面试宝典,尤其应届生如果还没有学过那后悔去吧,也许你已经错过N多家大厂offer

爱好编程进阶

Java 程序员 后端开发

Day340

爱好编程进阶

Java 程序员 后端开发

Elasticsearch Document Bulk API详解、原理与示例

爱好编程进阶

程序员 后端开发

Git 这样回退代码,才足够优雅

爱好编程进阶

Java 程序员 后端开发

《对线面试官》Java注解

Java3y

Java 程序员 面试 编程语言 5月月更

SpringSecurity认证流程分析

急需上岸的小谢

5月月更

Electron 6.0.0发布了,带来4项重大改进!_编程语言_Electron Blog_InfoQ精选文章