写点什么

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:437355

评论

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

英雄无敌3 for Mac(策略游戏)支持M1 v4.507高清中文版

iMac小白

防水堡是什么?各行各业怎么定义?

行云管家

网络安全 防水堡 行云防水堡

专为大模型训练优化,百度集合通信库 BCCL 万卡集群快速定位故障

Baidu AICLOUD

故障定位 大模型训练 集合通信库 NCCL

AutoCAD 2024 for Mac(cad设计绘图工具) v2024.3中文激活版

iMac小白

SecureCRT for Mac(专业终端SSH工具)附注册码 v9.4.3正式版

iMac小白

立即报名Atlassian Team’24,与龙智一同踏上前往数字服务的创新之路

龙智—DevSecOps解决方案

Atlassian

Termius for Mac(多协议远程管理软件) 8.4.0激活版

iMac小白

AnyGo for Mac(虚拟定位软件) 6.9.5免激活版

iMac小白

Navicat Premium for Mac(多协议数据库管理工具) 16.3.4中文激活版

iMac小白

云游戏:畅享3A游戏大作的全新时代

Ogcloud

游戏 云游戏 3A游戏 3A云游戏

龙智联合Atlassian举办DevSecOps研讨会,Jama总监分享Jama与Jira集成经验,助力产品开发复杂性管理

龙智—DevSecOps解决方案

Jira jama

聚道云软件连接器2月新增应用/产品更新合集

聚道云软件连接器

功能更新

实时数据驱动:API商品数据接口引领业务飞跃

Noah

DevChat上新:/commit让你躺平都能写好规范的提交消息

思码逸研发效能

破局数据分析滞后难题,赋能企业高速增长的指标管理解决方案

袋鼠云数栈

指标体系 指标 指标管理

暗黑2:毁灭之王 for Mac(含各职业存档) v1.14d 中文单机移植版

iMac小白

Bored Ape Yacht Club NFT 概览与数据分析

Footprint Analytics

NFT

一文了解Lint工具的优缺点,以及它与高级静态分析工具的比较

龙智—DevSecOps解决方案

linter lint

Acrobat Pro DC 2023 for Mac(PDF编辑器)中文破解版下载

iMac小白

【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit

HMS Core

HarmonyOS

DAPP合约代币矩阵公排系统开发

l8l259l3365

编程中有哪些好的习惯一开始就值得坚持?

小齐写代码

微店商品详情 API 的调用频率有限制吗?

技术冰糖葫芦

API 文档

JavaScript 的 structuredClone:深拷贝技术全解析

Liam

JavaScript 前端 Web 前端开发 structuredClone

2024年工控人职场求生之路

AIRIOT

工控 智慧系统 工控工程师

Downie 4 for Mac(最好用的视频下载软件) 4.7.2直装版

iMac小白

少走弯路 不踩坑 Datadog 的替代品来了

可观测技术

可观测性

面试官上来就让手撕HashMap的7种遍历方式,当场愣住,最后只写出了3种

不在线第一只蜗牛

Python 程序员 面试 开发语言

面试必备:一线大厂Redis缓存设计规范与性能优化

EquatorCoco

redis 缓存 程序员 面试

微信多开 WechatTweak for Mac(微信多开、消息防撤回工具) v3.8.6(28078)中文集成版

iMac小白

智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人

汀丶人工智能

人工智能 深度学习 智能机器人

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