Electron 10.0.0
Electron 10.0.0 已經發佈!它包含 Chromium 85
、V8 8.5
和 Node.js 12.16
的升級。我們新增了幾個新的 API 整合和改進。請閱讀以下內容以了解更多詳細資訊!
Electron 團隊很高興宣布 Electron 10.0.0 的發佈!您可以使用 npm 透過 npm install electron@latest
安裝它,或從我們的發佈網站下載。此版本包含許多升級、修復和新功能。
在 Electron 10 發佈版本中,我們也對發佈說明進行了變更。為了更容易分辨 Electron 10 中的全新功能,以及 Electron 10 與過去版本之間可能發生的變更,我們現在也包含 Electron 10 中引入但向後移植到先前版本的變更。我們希望這能讓應用程式在升級 Electron 時更容易找到新功能和錯誤修復。
我們迫不及待想看看您使用它們建置什麼!繼續閱讀以了解有關此版本的詳細資訊,並請分享您有的任何意見回饋!
值得注意的變更
堆疊變更
- Chromium
85.0.4183.84
- Node.js
12.16.3
- V8
8.5
重點功能
- 新增
contents.getBackgroundThrottling()
方法和contents.backgroundThrottling
屬性。 [#21036] - 在主程序中公開
desktopCapturer
模組。#23548 - 現在可以透過呼叫
ses.isPersistent()
API 來檢查給定的session
是否為持久性。#22622 - 解決因網路 IP 位址變更和 ICE 而導致 RTC 通話無法連線的網路問題。(Chromium 問題 1113227)。#24998
請參閱10.0.0 發佈說明以取得新功能和變更的完整清單。
重大變更
- 將
enableRemoteModule
的預設值變更為false
。#22091- 這是我們棄用
remote
模組並將其移至使用者空間的計畫一部分。您可以閱讀並追蹤此問題,其中詳細說明了我們這樣做的原因,並包含建議的棄用時程表。
- 這是我們棄用
- 將
app.allowRendererProcessReuse
的預設值變更為true
。#22336 (在 Electron 9 中也是如此)- 這將防止在渲染器程序中載入非上下文感知的原生模組。
- 您可以閱讀並追蹤此問題,其中詳細說明了我們這樣做的原因,並包含建議的棄用時程表。
- 修正了當 OS 地區設定設定為 RTL 語言 (例如阿拉伯文或希伯來文) 時,macOS 上視窗按鈕的定位。無框架視窗應用程式在設定其視窗樣式時可能必須考量此變更。#22016
有關這些及未來變更的更多資訊,請參閱計畫中的重大變更頁面。
API 變更
- Session:現在可以透過呼叫
ses.isPersistent()
API 來檢查給定的session
是否為持久性。#22622 - Contents:新增
contents.getBackgroundThrottling()
方法和contents.backgroundThrottling
屬性。#21036
已棄用的 API
以下 API 現在已棄用或移除
- 移除了
netLog
已棄用的currentlyLoggingPath
屬性。此外,netLog.stopLogging
不再傳回記錄日誌的路徑。#22732 - 在
crashReporter
中棄用未壓縮的當機上傳。#23598
7.x.y 版本終止支援
根據專案的支援政策,Electron 7.x.y 已達到終止支援。鼓勵開發人員和應用程式升級到較新版本的 Electron。
下一步
短期內,您可以預期團隊將繼續專注於跟上構成 Electron 的主要元件 (包括 Chromium、Node 和 V8) 的開發。雖然我們謹慎不對發佈日期做出承諾,但我們的計畫是約每季發佈具有這些元件新版本的 Electron 主要版本。暫定的 11.0.0 時程表列出了 Electron 11.0 開發生命週期中的重要日期。此外,請參閱我們的版本控制文件以取得有關 Electron 版本控制的更詳細資訊。
有關即將推出的 Electron 版本中計畫中的重大變更的資訊,請參閱我們計畫中的重大變更文件。
繼續棄用 remote
模組的工作 (在 Electron 11 中)
我們在Electron 9 中開始移除 remote 模組的工作,並且我們正在繼續計畫移除 remote
模組。在 Electron 11 中,我們計畫繼續重構工作,以實作 WeakRef,就像我們在 Electron 10 中所做的那樣。請閱讀並追蹤此問題,以取得完整的棄用計畫和詳細資訊。
要求原生 Node 模組為上下文感知或 N-API 的最終步驟 (在 Electron 12 中)
編輯:最初,這篇部落格文章指出我們將在 Electron 11 中停用渲染器程序重複使用。停用渲染器程序重複使用現在已延遲到 Electron 12。
從 Electron 6 開始,我們一直在為要求在渲染器程序中載入的原生 Node 模組必須是 N-API 或上下文感知奠定基礎。強制執行此變更可實現更強的安全性、更快的效能和減少的維護工作量。此計畫的最後一步是在 Electron 12 中移除停用渲染程序重複使用的能力。請閱讀此問題以取得完整詳細資訊,包括建議的時程表。