Перейти к основному содержанию

Electron 13.0.0

· 4 мин. прочитано

Electron 13.0.0 вышел! It includes upgrades to Chromium 91 and V8 9.1. We've added several API updates, bug fixes, and general improvements. Read below for more details!


Команда Electron рада объявить о выпуске Electron 13.0.0! You can install it with npm via npm install electron@latest or download it from our releases website. Continue reading for details about this release, and please share any feedback you have!

Notable Changes

  • Added process.contextIsolated property that indicates whether the current renderer context has contextIsolation enabled. #28252
  • Added new session.storagePath API to get the path on disk for session-specific data. #28866
  • Deprecated the new-window event of WebContents. Заменяется на webContents.setWindowOpenHandler()
  • Added process.contextId used by @electron/remote. #28251

See the 13.0.0 release notes for a full list of new features and changes.

Electron 12.0.0

· 7 мин. прочитано

Electron 12.0.0 вышел! It includes upgrades to Chromium 89, V8 8.9 and Node.js 14.16. We've added changes to the remote module, new defaults for contextIsolation, a new webFrameMain API, and general improvements. Read below for more details!


Команда Electron рада объявить о выпуске Electron 12.0.0! You can install it with npm via npm install electron@latest or download it from our releases website. Continue reading for details about this release, and please share any feedback you have!

Electron 11.0.0

· 4 мин. прочитано

Electron 11.0.0 вышел! Он включает обновления Chromium 87, V8 8.7 и Node.js 12.18.3. We've added support for Apple silicon, and general improvements. Read below for more details!


Команда Electron рада объявить о выпуске Electron 11.0.0! You can install it with npm via npm install electron@latest or download it from our releases website. The release is packed with upgrades, fixes, and new support for Apple's M1 hardware.

We can't wait to see what you build with them! Continue reading for details about this release, and please share any feedback you have!

Notable Changes

See the 11.0.0 release notes for a full list of new features and changes.

Поддержка Silicon Apple

· 3 мин. прочитано

С Apple Silicon аппаратное обеспечение, выпускается позднее в этом году, как выглядит путь для того, чтобы приложение Electron запущено на новом оборудовании?


С выпуском Electron 11.0.0-beta., команда Electron в настоящее время поставляет сборки Electron, которые работают на новом аппаратном обеспечении Apple Silicon, которое Apple планирует осуществлять доставку позднее в этом году. You can grab the latest beta with npm install electron@beta or download it directly from our releases website.

Как это работает?

Начиная с Electron 11, мы будем отправлять отдельные версии Electron для Intel Macs и Apple Silicon Mac. До этого изменения мы уже были доставлены два артефакта: darwin-x64 и mas-x64, причем последнее использовалось для Mac App Store. Теперь мы доставляем еще два артефакта: darwin-arm64 и mas-arm64, которые являются Apple Silicon эквивалентами вышеупомянутых артефактов.

Что вам нужно сделать?

Вам нужно будет отправить две версии приложения: одну для x64 (Intel Mac) и одну для arm64 (Apple Silicon). Для большинства пользователей это просто, потому "из коробки" поддерживаются electron-packager, electron-rebuildelectron-forge. До тех пор, пока вы используете последние версии этих пакетов, ваше приложение должно работать безупречно, как только вы обновите целевую архитектуру до arm64.


Обновление: Этот пакет теперь доступен на [`@electron/universal`](https://github.com/electron/universal). You can use it to merge two packaged x64 and arm64 apps into a single binary.

## Potential Issues

### Native Modules

As you are targeting a new architecture, you'll need to update several dependencies which may cause build issues. The minimum version of certain dependencies are included below for your reference.

| Dependency | Version Requirement |
| ------------------- | ------------------- |
| Xcode | `>=12.2.0` |
| `node-gyp` | `>=7.1.0` |
| `electron-rebuild` | `>=1.12.0` |
| `electron-packager` | `>=15.1.0` |

As a result of these dependency version requirements, you may have to fix/update certain native modules. One thing of note is that the Xcode upgrade will introduce a new version of the macOS SDK, which may cause build failures for your native modules.

## How do I test it?

Currently, Apple Silicon applications only run on Apple Silicon hardware, which isn't commercially available at the time of writing this blog post. If you have a [Developer Transition Kit](https://developer.apple.com/programs/universal/), you can test your application on that. Otherwise, you'll have to wait for the release of production Apple Silicon hardware to test if your application works.

## What about Rosetta 2?

Rosetta 2 is Apple's latest iteration of their [Rosetta](https://en.wikipedia.org/wiki/Rosetta_(software)) technology, which allows you to run x64 Intel applications on their new arm64 Apple Silicon hardware. Although we believe that x64 Electron apps will run under Rosetta 2, there are some important things to note (and reasons why you should ship a native arm64 binary).

- Your app's performance will be significantly degraded. Electron / V8 uses [JIT](https://en.wikipedia.org/wiki/Just-in-time_compilation) compilation for JavaScript, and due to how Rosetta works, you will effectively be running JIT twice (once in V8 and once in Rosetta).
- You lose the benefit of new technology in Apple Silicon, such as the increased memory page size.
- Did we mention that the performance will be **significantly** degraded?

Community Discord Server and Hacktoberfest

· 3 мин. прочитано

Join us for community bonding and a month-long celebration of open-source.


Hacktoberfest and Discord banner

Electron Community Discord Launch

Electron’s Outreach Working Group is excited to announce the launch of our official community Discord server!

Why a new Discord server?

In its early days as the backbone of the Atom text editor, community discussion on the Electron framework occurred in a single channel in Atom’s Slack workspace. As time passed and the two projects were increasingly decoupled, the relevance of the Atom workspace to the Electron project decreased, and maintainer participation in the Slack channel declined in the same manner.

Up until now, we had still been redirecting our broader community to the Atom Slack workspace, even though we’ve had many reports from folks who have had trouble receiving invitations, and few of our core maintainers were frequenting the channel.

We’re setting up this shiny new server to be a central discussion hub for the community where you can get the latest news on all things Electron.

Get in here!

So far, the server’s membership consists of a few maintainers who have been working together to set it up, but we’re so excited to chat with you all! Come ask for help, keep up to date with Electron releases, or just hang out with other developers. We’ve got a handy invite for you that’ll give you access to the server!

Hacktoberfest 2020

As a large and long-running open-source project, Electron wouldn’t have been nearly as successful without all the contributions from its community, from code submissions to bug reports to documentation changes, and much more. That’s why we believe in the importance of participating in Hacktoberfest to usher in a wider community of developers of all skill levels into the project.

Odds and ends

This year, we don’t have a wider project to give you all to work on, but we’d like to focus on opportunities to contribute across the Electron JavaScript ecosystem.

Look out for issues tagged hacktoberfest across our various repositories, including the main electron/electron repository, the electron/electronjs.org website, electron/fiddle, and electron-userland/electron-forge!

P.S. If you're feeling particularly adventurous, we also have a backlog of issues marked with help wanted tags if you're looking for more of a challenge.

Stuck? Come chat with us!

Moreover, it’s also no coincidence that the grand opening of our Discord server coincides with the largest celebration of open-source software of the year. Check out the #hacktoberfest channel to ask for help on your Hacktoberfest PR. In case you missed it, here's the invite link again!

Electron 10.0.0

· 5 мин. прочитано

Electron 10.0.0 вышел! Он включает обновления Chromium 85, V8 8.5 и Node.js 12.16. We've added several new API integrations and improvements. Read below for more details!


Команда Electron рада объявить о выпуске Electron 10.0.0! You can install it with npm via npm install electron@latest or download it from our releases website. The release is packed with upgrades, fixes, and new features.

In the Electron 10 release, we also made a change to our release notes. To make it easier to tell what's brand new in Electron 10 and what may have changed between Electron 10 and past releases, we now also include changes that were introduced to Electron 10, but backported to previous releases. We hope this makes it easier to apps to find new features and bug fixes when upgrading Electron.

We can't wait to see what you build with them! Continue reading for details about this release, and please share any feedback you have!

Notable Changes

  • Added contents.getBackgroundThrottling() method and contents.backgroundThrottling property. [#21036]
  • Exposed the desktopCapturer module in the main process. #23548
  • Can now check if a given session is persistent by calling the ses.isPersistent() API. #22622
  • Resolve network issues that prevented RTC calls from being connected due to network IP address changes and ICE. (Chromium issue 1113227). #24998

See the 10.0.0 release notes for a full list of new features and changes.

Electron becomes an OpenJS Foundation Impact Project

· Одна мин. чтения

At OpenJS World this morning, we announced that Electron has officially graduated from the OpenJS Foundation's incubation program, and is now an OpenJS Foundation Impact Project.

Electron entered incubation in December of 2019, at the last OpenJS Foundation global conference in Montreal. We're excited to take a larger role in the JavaScript community as an Impact Project, and continue our partnership with the OpenJS Foundation.


Learning more

You can read up on the foundation, its mission, and its members on the OpenJSF website. The OpenJS Foundation is host to a number of open source JavaScript projects including jQuery, Node.js, and webpack. It's supported by 30 corporate and end-user members, including GoDaddy, Google, IBM, Intel, Joyent, and Microsoft.

Electron is an open–source framework for building cross-platform desktop applications with web technologies. To learn more about the humans behind Electron and how they work together, take a look at our Governance page.

To get started with Electron itself, take a peek at our documentation.

Google Season of Docs

· 3 мин. прочитано

Electron имеет честь участвовать во второй версии инициативы "Google's Season of Docs", которая соединяет менторов из open source организаций с техническими писателями для улучшения документации проектов.


Что такое "Season of Docs"?

Season of Docs logo

"Season of Docs" это программа, которая способствует сотрудничеству между техническими писателями и сообществами с открытым исходным кодом в интересах обеих сторон. Open source maintainers utilize the writer's technical writing expertise to improve the structure and content of their documentation, while the technical writer is introduced to an open-source community under the guidance of its mentors. Learn more about it on the Google's Season of Docs website.

For our first time participating in the program, we'll be mentoring a single technical writer who will be working alongside Electron's Ecosystem Working Group to reshape large parts of our documentation. You can learn more about the timeline of the whole project here.

Как зарегистрироваться?

Are you interested in collaborating with us as a technical writer? First, get familiar with Google's tech writer guide for this year's program, and check out the two project idea drafts that we have prepared.

In order to be selected as Electron's technical writer for Season of Docs, candidates will need to apply on the Google Season of Docs website during the Technical Writer Application phase that is running from June 8 to July 9..

Your application should include a proposal, which is a written document that describes in detail what you plan to achieve on the Electron docs over the course of 3 months. This proposal can either develop on one of the starting points mentioned in our Project Idea doc, or can be something entirely new. Don't know where to start? You can check out last year's list of accepted proposals for inspiration.

Aside from the proposal, we'll also be looking at your background as a technical writer. Please include a copy of your resume with an emphasis on relevant writing experience, as well as technical writing samples (these samples could be existing documentation, tutorial, blog posts, etc.)

If you want to discuss project proposals, shoot us an email at season-of-docs@electronjs.org and we can chat from there!

Ссылки

Electron 9.0.0

· 5 мин. прочитано

Electron 9.0.0 вышел! Он включает обновления Chromium 83, V8 8.3 и Node.js 12.14. We've added several new API integrations for our spellchecker feature, enabled PDF viewer, and much more!


Команда Electron рада объявить о выпуске Electron 9.0.0! You can install it with npm via npm install electron@latest or download it from our releases website. The release is packed with upgrades, fixes, and new features. We can't wait to see what you build with them! Continue reading for details about this release, and please share any feedback you have!

Notable Changes

  • Multiple improvements to the spellchecker feature. See more details in #22128 and #22368.
  • Improved window events handler efficiency on Linux. #23260.
  • Enable PDF viewer. #22131.

See the 9.0.0 release notes for a full list of new features and changes.

Будущие релизы Electron

· Одна мин. чтения

Electron временно приостанавливает основные релизы


Что происходит?

Наш график выхода основных версий будет приостановлен вместе с Chromium, так как проект Chromium принял решение о приостановке своих релизов из-за скорректированных графиков работы. Это значит, что на время приостановки Chromium, Electron также приостановит выпуск новых основных версий.

Мы считаем, что наш лучший выбор — это следовать по стопам Chromium, и так в то же время команда Electron переместится на полную работу по исправлению ошибок, безопасности, производительности и стабильности.

Мы хотим, чтобы благополучие как наших сопровождающих, так и наших потребителей было в приоритете в это время, поэтому мы приветствуем ваши отзывы и с нетерпением ждем возвращения к нашему регулярному графику выпуска.

Пожалуйста, подпишитесь на наш Twitter аккаунт для получения обновлений.

Дополнение (2020-03-30): Electron 9 будет использовать Chromium M83 и будет выпущен 19 Мая, 2020, в ответ на Объявление Chromium'а о пропуске стабильной даты M82 и изменении даты для M83.