Electron 6.0.0 發布

←手機掃碼閱讀     admin @ 2019-08-01 , reply:0

Electron 6.0.0 穩定版已於昨天正式發布,此版本的更新內容包括升級組件、修復 bug 以及引入新特性等。有意思的是,團隊表示這是首次在同一天同時發布與 Electron 穩定版對應的 Chrome 穩定版(Chrome 76)。

可通過 npm install electron@latest 命令進行升級,或者從下載頁面下載新版本。

Electron 是 GitHub 開發的跨平台桌面應用開發工具,支持使用 Web 技術開發桌面應用,其基於 C++ 開發,GUI 核心來自於 Chromium,而 JavaScript 引擎使用 V8。

310726a6663f4df79a5194e36b2523f772f.jpg

更新內容

Electron 的核心組件是 Chromium、Node.js 與 V8,按照國際慣例它一般都會與這些項目保持同步更新,以提供最新的 JavaScript 特性、性能改進和安全修復。在此版本中這三者分別升級到了:Chromium 76.0.3809.88、Node.js 12.4.0、V8 7.6.303.22

除了針對組件的更新,此版本還包括對 Electron API 的改進。完整列表請查看發布說明,值得關注的如下:

Promisification

Electron 6.0 繼續踐行從 5.0 版本開始的現代化方案,以改進對 Promise 的支持。

下面的函數現在會返回 Promises 並支持舊版的基於回調的調用:

  • 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

下面的函數會返回 Promises:

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

由於要啟用 hardened runtime(強化運行時) 功能,這會限制可寫可執行內存(writable-executable memory)和載入由不同團隊 ID 簽名的代碼,另外還需要向 Helper 授予專用的代碼簽名許可權。

因此,為了將這些許可權限定在需要它們的的流程類型(process types),Chromium 添加了三個新的 Helper.app 變體:一個用於渲染器 (Electron Helper (Renderer).app)、一個用於 GPU 進程 (Electron Helper (GPU).app),還有一個用於插件 (Electron Helper (Plugin).app)。

使用 electron-osx-sign 對其 Electron App 進行代碼簽名的開發者不會對他們的構建邏輯進行任何變更,如果使用自定義腳本對 App 進行簽名,則應確保三個新的 Help 應用程序已正確簽名。

為了使用這些新的 helper 正確打包應用程序,我們需要使用 electron-packager@14.0.4 或更高版本。如果正在使用 electron-builder建議遵循此 issue 來跟蹤對新 helper 的支持。

結束對 3.x.y 的支持

根據版本支持計劃Electron 3.x.y 已經到達 EOF 階段,官方不再對其提供支持。

未來計劃

短期來看,團隊會繼續升級 Electron 的核心組件,包括 Chromium、Node 和 V8。至於更新頻率,計劃是每季度發布一次新的主要版本,同時對核心組件進行升級。7.0.0 的暫定發布時間表列出了 Electron 7 開發周期中的關鍵時間節點。如需獲取有關 Electron 版本的更多信息,請查看版本控制文檔





[admin ]

來源:OsChina
連結:https://www.oschina.net/news/108708/electron-6-0-released
Electron 6.0.0 發布已經有14次圍觀

http://coctec.com/news/soft/show-post-211398.html