メインコンテンツへ飛ぶ

コミュニティDiscordサーバーとHacktoberfest

· 読むのにかかる時間 1 分

コミュニティの絆とオープンソースの1ヶ月間のお祝いのために私たちに参加してください。


Hacktoberfest と Discord のバナー

Electron コミュニティの Discord の立ち上げ

Electronの Outreach ワーキンググループ は、 公式コミュニティ Discord サーバーの立ち上げを発表することを楽しみにしています!

なぜ新しいDiscordサーバーなのか?

Atom テキスト エディタののバックボーンとして、Electron フレームワークに関するコミュニティでのディスカッションは、Atom の Slack ワークスペースの1チャネルで行われていました。 時間が経ち、2つのプロジェクトが分離していくにつれて、AtomワークスペースとElectronプロジェクトとの関連性は低下し、Slackチャンネルへのメンテナンの参加者も同様に低下しました。

これまで、招待を受け取るのに苦労したと多く人からの報告を受けました。コアメンテナンス担当者のほとんどがチャンネルを頻繁に行なっていたにもかかわらず、より広範なコミュニティをAtom Slackワークスペースにリダイレクトしていました。

この新しいサーバーは、Electron に関する最新情報を得ることができる、コミュニティの中心的な議論の場となるようにしています。

ぜひお越しください!

今のところ、サーバーのメンバーシップは数人のメンターが協力して立ち上げていますが、皆さんとお話しできることをとても楽しみにしています。 助けを求めたり、Electron の最新情報を得たり、他の開発者と交流したりできます。 サーバーにアクセスできる便利な 招待リンク をご用意しました!

Hacktoberfest 2020

大規模で長期間実行されているオープンソースプロジェクトとして、Electronはコミュニティからの貢献なしにはほとんど成功しませんでした。 コードの提出からバグレポート、ドキュメントの変更まで様々です。 だからこそ、Hacktoberfest に参加することで、あらゆるスキルレベルの開発者たちがより広いコミュニティでプロジェクトに参加できるようになることが重要だと考えています。

寄せ集め物

今年は、あなたにすべてを与えるより広いプロジェクトを持っていません。しかし、Electron JavaScript エコシステム全体に貢献する機会に焦点を当てたいと思います。

私達のさまざまリポジトリで hacktoberfest のタグのある課題をみてください。メインの electron/electron リポジトリ、electron/electronjs.org ウェブサイト、electron/fiddle、それに electron-userland/electron-forgeもあります。

P.S. 特に冒険したい方向けに、help wanted タグが付けられた Issue のバックログも用意しています。

つまづきましたか? 一緒にチャットしてみましょう!

さらに、私たちの Discord サーバーのグランドオープンが、今年最大のオープンソースソフトウェアの祭典と重なったのも偶然ではありません。 Hacktoberfest の PR に協力してもらうためにも、#hacktoberfest チャンネルをチェックしてみましょう。 見逃した方のために、招待リンクをこちらに再びご用意しました!

Electron 10.0.0

· 読むのにかかる時間 1 分

Electron 10.0.0 がリリースされました! これには Chromium 85、V8 8.5、Node.js 12.16 へのアップグレードが含まれています。 いくつかの新しい API 統合の追加と改善を行いました。 詳しくは以下をご覧ください!


Electron チームは、Electron 10.0.0 のリリース発表にワクワクしています! npm install electron@latest から npm でインストールするか、リリースウェブサイト からダウンロードできます。 このリリースには、アップグレード、修正、新機能が含まれています。

この Electron 10 リリースでは、リリースノートにも変更を加えました。 Electron 10 の新機能と、Electron 10 と過去のリリースとの間で変更された点を分かりやすくするために、Electron 10 に導入されつつ過去のリリースにも後方移植された変更点も含めるようにしました。 これにより、Electron をアップグレードする際に新機能やバグ修正を探しやすくなることを期待しています。

新機能たちと共に何を作るのか、楽しみにしています! このリリースの詳細については下に続きます。是非ご意見をお聞かせください!

注目すべき変更

  • contents.getBackgroundThrottling() メソッドと contents.backgroundThrottling プロパティを追加しました。 [#21036]
  • メインプロセスで desktopCapturer モジュールを公開しました。 #23548
  • ses.isPersistent() API を呼び出すことで、与えられた session が永続的であるかどうかをチェックできるようになりました。 #22622
  • ネットワークの IP アドレスの変更や ICE により、RTC 通話が接続できないネットワーク問題を解決しました。 (Chromium issue 1113227)。 #24998

新機能と変更の完全なリストは、10.0.0 リリースノート を参照してください。

Electron が OpenJS Foundation Impact Project になる

· 読むのにかかる時間 1 分

今朝 OpenJSワールド で、Electronが OpenJS財団の インキュベーションプログラムを正式に卒業し、現在OpenJS財団インパクトプロジェクトになったことを発表しました。

Electron は 2019 年 12 月にインキュベーションに参加しました。これは、モントリオールで開催された直近の OpenJS Foundation グローバルカンファレンスで発表されました。 私たちは、Impact Project として JavaScript コミュニティでより大きな役割を果たし、OpenJS Foundation とのパートナーシップを継続できることを嬉しく思います。


詳細

財団、その使命、財団員については、[OpenJSF ウェブサイト](https://www.notion.so/Electron-joins-the-OpenJS-Foundation- d898f12480874e56abe78f29b041fb91#0801fd7e9fa340afbcdce0510ba05f8a) で見ることができます。 OpenJS 財団は、jQuery、Node.js、webpack などの多くのオープンソース JavaScript プロジェクトをホストしています。 GoDaddy、Google、IBM、Intel、Joyent、Microsoft を含む 30 の企業やエンドユーザーメンバーによってサポートされています。

Electron は、ウェブ技術を備えたクロスプラットフォームのデスクトップアプリケーションを構築するオープンソースフレームワークです。 Electron の裏方の人物とどのように連携するのかについては、ガバナンスページ を参照してください。

Electron 自体を使い始める場合は、ドキュメント をご覧ください。

Google Season of Docs

· 読むのにかかる時間 1 分

Google Season of Docs 第 2 段に参加させていただき、Electron としては大変光栄です。このイニシアティブでは、オープンソース組織のメンターとテクニカルライターがペアを組み、プロジェクトのドキュメントを改善していきます。


Season of Docs とは何ですか?

Season of Docs ロゴ

Season of Docs は、テクニカルライターとオープンソースコミュニティのコラボレーションを促進し、両者の利益に貢献するプログラムです。 オープンソースのメンテナーは、ライターのテクニカルライティングの専門知識を活用して、ドキュメントの構造と内容を改善します。テクニカルライターは、指導者の指導のもとオープンソースのコミュニティへ派遣されます。 詳細は Google の Season of Docs ウェブサイト で解説しています。

このプログラムに初めて参加した弊社では、テクニカルライター 1 名をメンターとして迎え、Electron の エコシステム作業グループ と協力しドキュメントの大部分を再構築していきます。 プロジェクト全体のタイムラインについては、こちら をご覧ください。

登録方法は何ですか?

テクニカルライターとして弊社とのコラボレーションに興味がございますか? まずは、今年のプログラムのために Google の テクニカルライターガイド を把握し、用意した 2 つの プロジェクトのアイデア草稿 をご確認ください。

Season of Docs のテクニカルライターとして採用されるには、6 月 8 日から 7 月 9 日までの期間中に Google Season of Docs のウェブサイトから応募する必要があります。

応募書類には、3 ヶ月間 Electron ドキュメントで何を成し遂げようとしているのかを詳細に記述した提案書を添付してください。 この提案書は、プロジェクトのアイデア草稿に記載した出発点のいずれかを発展させた内容か、全く新しいものにして頂いて構いません。 どこから手を付ければいいのかわかりませんか? 昨年の 受理された提案書のリスト を閲覧して、知見を得ることもできますよ。

提案書とは別に、テクニカルライターとしての経歴も審査されます。 履歴書には、テクニカルライティングのサンプル (既存のドキュメント、チュートリアル、ブログ記事など) と、加えて関連するライティング経験を強調したコピーを添付してください。

プロジェクトの提案を議論したい場合は、season-of-docs@electronjs.org までメールでお問い合わせください。そこからお話しましょう!

リファレンス

Electron 9.0.0

· 読むのにかかる時間 1 分

Electron 9.0.0 がリリースされました! これには Chromium 83、V8 8.3、Node.js 12.14 へのアップグレードが含まれています。 スペルチェッカー機能や PDF ビュアーなど、いくつかの新しい API 統合を追加しました。


Electron チームは、Electron 9.0.0 のリリース発表にワクワクしています! npm install electron@latest から npm でインストールするか、リリースウェブサイト からダウンロードできます。 このリリースには、アップグレード、修正、新機能が含まれています。 新機能たちと共に何を作るのか、楽しみにしています! このリリースの詳細については下に続きます。是非ご意見をお聞かせください!

注目すべき変更

  • スペルチェッカー機能に複数の改善をしました。 詳細は #22128#22368 を参照してください。
  • Linux におけるウインドウイベントハンドラの効率を改善しました。 #23260.
  • PDF ビュアーを有効にしました。 #22131.

新機能と変更の完全なリストは、9.0.0 リリースノート を参照してください。

Electron リリースの登場

· 読むのにかかる時間 1 分

Electron はメジャーリリースを延期しています


何か起きているのですか?

メジャーリリースのケイデンススケジュール は Chromium のリリーススケジュールと連動しており、最近になって Chromium プロジェクトは作業スケジュール調整のために リリースを一時停止する 決定をしました。 つまり、Chromium のケイデンスが変更されている間、Electron は新しいメジャーリリースを一時的に延期します。

Chromium の歩みに合わせることが最善の選択として慎重に進めており、その間、Electron チームはバグ修正、セキュリティ、パフォーマンス、安定性に関するフルタイム作業に移行します。

この間、メンテナーと消費者両方の福利が優先されたいため、フィードバックを歓迎しますし、通常のリリーススケジュールに戻ることを楽しみにしています。

その他の更新情報については Twitter アカウント をフォローしてください。

編集 (2020-03-30): Electron 9 安定版は Chromium M83 をターゲットとし、Chromium の発表 である M82 の安定版の日付を飛ばして M83 の安定版の日付へと調整することで、2020 年 5 月 19 日にリリースされます。

Electron 8.0.0

· 読むのにかかる時間 1 分

Electron 8.0.0 がリリースされました! これには Chromium 80、V8 8.0、Node.js 12.13.0 へのアップグレードが含まれています。 Chrome の組み込みスペルチェッカーや、その他にも色々と追加しました!


Electron チームは、Electron 8.0.0 のリリース発表にワクワクしています! npm install electron@latest から npm でインストールするか、リリースウェブサイト からダウンロードできます。 このリリースには、アップグレード、修正、新機能が含まれています。 新機能たちと共に何を作るのか、楽しみにしています! このリリースの詳細については下に続きます。是非ご意見をお聞かせください!

注目すべき変更

  • Chrome の組み込みスペルチェッカー機能を使用できるように実装しました。 詳細は #20692#7189 を参照してください。
  • IPC 通信では、v8 の構造化複製アルゴリズムが使用されるようになりました。 これは既存のロジックよりも驚くほど高速で、機能豊富で、小さくなっています。大容量バッファと複雑なオブジェクトに対するパフォーマンスは約 2 倍に向上します。 小さいメッセージに対する遅延はほとんど影響しません。 詳細は #20214 を参照してください。

新機能と変更の完全なリストは、8.0.0 リリースノート を参照してください。

Electron が OpenJS 財団に加盟

· 読むのにかかる時間 1 分

モントリオールの Node + JS Interactiveで、OpenJS 財団 が Electron を財団のインキュベーションプログラムに受け入れたことを発表しました。 財団は、プロジェクトをホストし維持する中立的な組織を提供し、コミュニティ全体の利益のために共同で活動に資金を提供することにより、JavaScript エコシステムとウェブ技術の健全な成長を支援することを約束します。

OpenJS 財団は、jQuery、Node.js、webpack などの多くのオープンソース JavaScript プロジェクトをホストしています。 GoDaddy、Google、IBM、Intel、Joyent、Microsoft を含む 30 の企業やエンドユーザーメンバーによってサポートされています。 Electron は、ウェブ技術を備えたクロスプラットフォームのデスクトップアプリケーションを構築するオープンソースフレームワークです。

これは Electron にとって心躍る決定であり、オープンソースプロジェクトとして次の段階へ進化したと考えています。


開発者にとっての意義

Electron が OpenJS 財団に参加しても、Electron の作成、リリース、使用方法は変わりません。Electron を使用してアプリケーションを構築する開発者に直接影響を与えることはありません。 Electron は 2013 年に GitHub で作成されましたが、現在は多くの組織や個人によって管理されています。 2019 年、Electron はガバナンス構造を体系化し、プロジェクト全体に影響を与える決定方法の形式化に多額の投資を行いました。 複数の組織と開発者が Electron に投資し、協力することで、プロジェクトがより強くなると信じています。

Electron を単一企業体の所有から引き上げ、ウェブや JavaScript エコシステムのサポートに焦点を当てた中立的な基盤に移行することで、オープンソースプロジェクトとして次の段階へ成熟します。

詳細

財団、その使命、財団員については、[OpenJSF ウェブサイト](https://www.notion.so/Electron-joins-the-OpenJS-Foundation- d898f12480874e56abe78f29b041fb91#0801fd7e9fa340afbcdce0510ba05f8a) で見ることができます。 Electron の OpenJSF インキュベーションプログラムへの受け入れに関する詳細と引用については、公式プレスリリースをご覧ください。 Electron の裏方の人物とどのように連携するのかについては、ガバナンスページ を参照してください。

Electron 自体を使い始める場合は、ドキュメント をご覧ください。

Chromium WebAudio 脆弱性の修正 (CVE-2019-13720)

· 読むのにかかる時間 1 分

Chrome に高レベルの重大な脆弱性が発見されました。Electron を含む Chromium ベースのすべてのソフトウェアに影響します。

この脆弱性は CVE-2019-13720 と命名されています。 詳細は Chrome ブログ記事 を参照してください。

Chrome でこの脆弱性が悪用されているという報告があります。なるべく早く Electron を更新することを強く推奨します。


影響範囲

これはサードパーティや信頼できない JavaScript を実行する恐れのある Electron アプリケーションに影響します。

緩和策

影響を受けるアプリは、パッチを当てたバージョンの Electron にアップグレードする必要があります。

以下の通り、この脆弱性に対する修正を含む新しいバージョンの Electron を公開しました。

Electron 7.0.1 は、公表前に上流からの修正を自動的に含めました。 Electron 8 も同様に影響を受けません。 Electron 5 にこの脆弱性は存在しなかったため、そのバージョンも影響ありません。

詳細情報

この脆弱性は Kaspersky 研究所の Anton Ivanov と Alexey Kulaev によって発見され、Chrome チームに報告されました。 その Chrome ブログ記事は こちら です。

Electron アプリを堅牢に保つベストプラクティスの詳細は、セキュリティチュートリアル を参照してください。

Electron の脆弱性を報告したい方は、GitHub セキュリティアドバイザリ をご提出ください。

Electron 7.0.0

· 読むのにかかる時間 1 分

Electron 7.0.0 がリリースされました! これには Chromium 78、V8 7.8、Node.js 12.8.1 へのアップグレードが入っています。 Arm 64 版 Windows リリース、より高速な IPC メソッド、新しい nativeTheme API などを追加しました。


Electron チームは、Electron 7.0.0 のリリース発表にワクワクしています! npm install electron@latest から npm でインストールするか、リリースウェブサイト からダウンロードできます。 このリリースには、アップグレード、修正、新機能が含まれています。 新機能たちと共に何を作るのか、楽しみにしています! このリリースの詳細については下に続きます。是非ご意見をお聞かせください!

注目すべき変更

  • 累積的更新:

    累積Electron 6 でのバージョンElectron 7 でのバージョン新機能
    Chromium76.0.3809.14678.0.3905.177, 78
    V87.67.87.7, 7.8
    Node.js12.4.012.8.112.5, 12.6, 12.7, 12.8, 12.8.1
  • Arm (64 bit) 版 Windows リリースを追加しました。 #18591#20112

  • リクエスト/レスポンス式の非同期 IPC 向けに ipcRenderer.invoke()ipcMain.handle() を追加しました。 これらは remote モジュールよりも強く推奨されます。 詳細はこちらの "Electron の 'remote' モジュールは有害と考えられる" ブログ記事を参照してください。 #18449

  • OS のテーマや配色の変更を読み取って対応する nativeTheme API を追加しました。 #19758#20486

  • 新しい TypeScript 定義ファイル ジェネレータ に移行ました。 出力結果の定義ファイルがより正確になりました。TypeScript でのビルドに失敗するようになった場合は、これが原因である可能性が高いです。 #18103

変更の完全なリストは、7.0.0 リリースノート を参照してください。

破壊的変更

これらの変更と将来の変更の詳細については、予定されている破壊的変更 のページを参照してください。

  • 非推奨だった API の削除:
    • Promise を使用するようになった関数のコールバックベース版。 #17907
    • Tray.setHighlightMode() (macOS)。 #18981
    • app.enableMixedSandbox() #17894
    • app.getApplicationMenu()
    • app.setApplicationMenu()
    • powerMonitor.querySystemIdleState()
    • powerMonitor.querySystemIdleTime()
    • webFrame.setIsolatedWorldContentSecurityPolicy()
    • webFrame.setIsolatedWorldHumanReadableName()
    • webFrame.setIsolatedWorldSecurityOrigin() #18159
  • Session.clearAuthCache() はクリアしたキャッシュエントリをフィルタリングできなくなりました。 #17970
  • macOS のネイティブインターフェース (メニュー、ダイアログなど) が、ユーザーのマシンのダークモード設定に自動で合わせるようになりました。 #19226
  • electron モジュールが @electron/get を使用するように更新しました。 Node の最小対応バージョンが Node 8 になりました。 #18413
  • ファイル electron.asar は無くなりました。 このファイルが存在することに依存しているすべてのパッケージスクリプトは更新する必要があります。 #18577

4.x.y サポートの終了

Electron 4.x.y はプロジェクトの サポートポリシー に則りサポート終了となりました。 開発者とアプリケーションは新しいバージョンの Electron にアップグレードすることを推奨します。

App のフィードバックプログラム

テストには引き続き アプリフィードバックプログラム を使用します。 このプログラムに参加するプロジェクトは、そのアプリで Electron ベータ版をテストします。見返りとして、発見した新しいバグは安定版リリースのために優先します。 参加や詳細については、プログラムに関するブログ記事を確認してください

次回予告

短期的には、Chromium、Node、V8 といった Electron を構成する主要コンポーネントの開発に遅れないでチームが注力し続けるでしょう。 リリース日について約束しないように注意していますが、予定では約四半期ごとに新しいメジャーバージョンの Electron を、各コンポーネントの新しいバージョンに対してリリースします。 仮 8.0.0 スケジュール では、Electron 8 開発ライフサイクルの主要な日付を示してあります。 また、Electron のバージョン管理の詳細については バージョン管理のドキュメントを参照 してください。

今後のバージョンの Electron で予定されている破壊的変更の詳細は、予定されている破壊的変更のドキュメントを参照してください