Electron 12.0.0
Electron 12.0.0 がリリースされました!Chromium 89、V8 8.9、Node.js 14.16 へのアップグレードが含まれています。リモートモジュールの変更、contextIsolation の新しいデフォルト、新しい webFrameMain API、および一般的な改善が追加されました。詳細については下記をお読みください!
Electron チームは、Electron 12.0.0 のリリースを発表できることを嬉しく思います!npm で npm install electron@latest を使用してインストールするか、リリースウェブサイトからダウンロードできます。このリリースに関する詳細については以下をお読みください。また、フィードバックがあれば共有してください!
注目すべき変更点
スタックの変更
- Chromium 89
- Node.js 14.16
- V8 8.9
ハイライト機能
- ContextBridge exposeInMainWorldメソッドは、オブジェクト以外の API を公開できるようになりました。#26834
- Node 12 から Node 14 にアップグレードしました。#23249
- メインプロセスから WebContentsインスタンスのサブフレームにアクセスするための新しいwebFrameMainAPI を追加しました。#25464
- contextIsolationと- worldSafeExecuteJavaScriptのデフォルト値が- trueになりました。#27949 #27502
新機能と変更点の完全なリストについては、12.0.0 リリースノートをご覧ください。
破壊的変更
- remoteモジュールを非推奨にしました。これは- @electron/remoteに置き換えられます。#25293- 現在 remoteモジュールを使用している場合は、@electron/remoteへの移行ガイドはこちらです。
 
- 現在 
- contextIsolationのデフォルト値を- trueに変更しました。#27949
- worldSafeExecuteJavaScriptのデフォルト値を- trueに変更しました。#27502
- crashReporter.start({ compress })のデフォルトを- falseから- trueに変更しました。#25288
- Flash サポートを削除しました:Chromium は Flash のサポートを削除しました。これは Electron 12 でも削除されました。詳細については、Chromium の Flash ロードマップをご覧ください。
- x86 で Chrome に SSE3 が必要になりました:Chromium は SSE3 (ストリーミング SIMD 拡張機能 3) の最小限のサポートを満たさない古い x86 CPUのサポートを削除しました。このサポートは Electron 12 でも削除されました。
これらの変更および今後の変更に関する詳細については、計画された破壊的変更ページをご覧ください。
API の変更
- webFrameMainAPI を追加:- webFrameMainモジュールは、既存の- WebContentsインスタンス全体でフレームを検索するために使用できます。これは、既存の webFrame API のメインプロセス相当です。この新しい API の詳細については、こちら、およびドキュメントをご覧ください。
- appAPI の変更
- BrowserWindowAPI の変更点- BrowserWindow.isTabletMode()API が追加されました。#25209
- BrowserWindowに- resized(Windows/macOS) および- moved(Windows) イベントが追加されました。#26216
- システムコンテキストメニューの防止とオーバーライドを可能にする新しい system-context-menuイベントが追加されました。#25795
- BrowserViewを前面に表示できるように、- win.setTopBrowserView()が追加されました。#27713
- ドキュメントの最小サイズに応じてビューのサイズを変更できるように、webPreferences.preferredSizeModeが追加されました。#25874
 
- contextBridgeAPI の変更点- ContextBridge の exposeInMainWorldメソッドで、オブジェクトではない API を公開できるようになりました。#26834
 
- ContextBridge の 
- displayAPI の変更点- Windows のリフレッシュレートに関する情報を取得できるように、DisplayオブジェクトにdisplayFrequencyプロパティが追加されました。#26472
 
- Windows のリフレッシュレートに関する情報を取得できるように、
- extensionsAPI の変更点- 一部の chrome.managementAPI のサポートが追加されました。#25098
 
- 一部の 
- MenuItemAPI の変更点- macOS の共有メニューの表示がサポートされました。#25629
 
- netAPI の変更点
- powerMonitorAPI の変更点
- sessionAPI の変更点- ses.loadExtension()API に- allowFileAccessオプションが追加されました。#27702
- session.setPermissionRequestHandlerに- display-captureAPI が追加されました。#27696
- session.setSSLConfigに- disabledCipherSuitesオプションが追加されました。#25818
- sessionに- extension-loaded、- extension-unloaded、および- extension-readyイベントが追加されました。#25385
- SSL を構成できるように session.setSSLConfig()が追加されました。#25461
- session.setProxy()で- direct、- auto_detect、または- systemモードを明示的に指定するためのサポートが追加されました。#24937
- Serial API のサポートが追加されました。#25237
- スペルチェッカーを有効/無効にするための API が追加されました。#26276
 
- shellAPI の変更点- 同期的な shell.moveItemToTrash()に代わる、新しい非同期のshell.trashItem()API が追加されました。#25114
 
- 同期的な 
- webContentsAPI の変更点- レンダラーのクラッシュをデバッグするのに役立つ小さなコンソールヒントがコンソールに追加されました。#25317
- webRequest ハンドラーの詳細オブジェクトに frameおよびwebContentsプロパティが追加されました。#27334
- ハングしたレンダラーの復旧を支援するために、レンダラープロセスを強制終了する webContents.forcefullyCrashRenderer()が追加されました。#25580
- レンダラーで作成された子ウィンドウ用の setWindowOpenHandlerAPI が追加され、new-windowイベントは非推奨になりました。#24517
 
- webFrameAPI の変更点- レンダラーにスペルチェック API が追加されました。#25060
 
削除/非推奨の変更点
次のAPIは削除されたか、非推奨になりました
- remoteモジュールを非推奨にしました。これは- @electron/remoteに置き換えられます。#25293
- 非推奨の crashReporterAPI が削除されました。#26709
- パッケージ化されたアプリのデフォルトの「ヘルプ」メニューから、Electron Webサイトへのリンクが削除されました。#25831
9.x.y のサポート終了
Electron 9.x.y は、プロジェクトのサポートポリシーに従って、サポートが終了しました。開発者およびアプリケーションは、新しいバージョンのElectronにアップグレードすることをお勧めします。
今後の予定
当面の間、チームはChromium、Node、V8など、Electronを構成する主要コンポーネントの開発を継続することに注力すると予想されます。リリース日については慎重を期していますが、これらのコンポーネントの新しいバージョンを搭載したElectronの新しいメジャーバージョンを四半期ごとにリリースする予定です。暫定的な13.0.0スケジュールでは、Electron 13.0の開発ライフサイクルにおける主要な日付をマッピングしています。また、Electronのバージョン管理の詳細については、バージョン管理に関するドキュメントをご覧ください。
今後のバージョンのElectronで予定されている破壊的な変更については、計画された破壊的な変更に関するドキュメントをご覧ください。








