Подготовлен (https://electronjs.org/blog/electron-6-0) релиз платформы Electron 6.0.0 (https://electronjs.org), которая предоставляет самодостаточный фреймворк для разработки многоплатформенных пользовательских приложений, использующий в качестве основы компоненты Chromium, V8 и Node.js. Значительное изменение номера версии связано с обновлением до кодовой базы Chromium 76 (https://www.opennet.ru/opennews/art.shtml?num=50308), платформы Node.js 12.4 (https://www.opennet.ru/opennews/art.shtml?num=50562) и JavaScript-движка V8 7.6. Ранее ожидавшееся (https://www.opennet.ru/opennews/art.shtml?num=50249) прекращение поддержки 32-разрядных систем Linux пока отложено и выпуск
6.0 в том числе доступен (https://github.com/electron/electron/releases/tag/v6.0.0) в 32-разрядных сборках. Среди изменений (https://github.com/electron/electron/releases/tag/v6.0.0) в API, специфичных для Electron:
- Продолжен перевод асинхронных обработчиков, ранее использующих callback-вызовы, в форму на основе механизма Promise (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...). Возвращение Promise обеспечено в нескольких десятках функций, в том числе в категориях contentTracing.*, cookies.*, session.*, webContents.* и webFrame.*;
- В рамках работы по усилению изоляции компонентов runtime добавлены три новых приложения-обработчика: Electron Helper (Renderer).app для процессов рендеринга, Electron Helper (GPU).app для процессов взаимодействия с GPU и Electron Helper (Plugin).app для плагинов;
- Началась подготовка к ограничению загрузки в процессе рендеринга только модулей Node, использующих N-API (https://nodejs.org/api/n-api.html) или API Context Aware (https://nodejs.org/api/addons.html#addons_context_aware_addons);
- Реализация net.IncomingMessage приведена в соответствие с поведением Node.js.
Напомним, что Electron позволяет создавать любые графические приложения с использованием браузерных технологий, логика работы которых определяется на JavaScript, HTML и CSS, а функциональность может быть расширена через систему дополнений. Разработчикам доступны модули Node.js, а также расширенный API для формирования нативных диалогов, интеграции приложений, создания контекстных меню, интеграции с системой вывода уведомлений, манипуляции окнами, взаимодействия с подсистемами Chromium.
В отличие от web-приложений, программы на базе Electron поставляются в виде самодостаточных исполняемых файлов, не привязанных к браузеру. При этом разработчику не нужно заботиться о портировании приложения для различных платформ, Electron обеспечит возможность сборки для всех систем, поддерживаемых в Chromium. Electron также предоставляет средства (http://electron.atom.io/docs/api/auto-updater/) для организации автоматической доставки и установки обновлений (обновления можно доставлять как с отдельного сервера, так и напрямую с GitHub).
Из программ, построенных на базе платформы Electron можно отметить редактор Atom (https://atom.io/), почтовый клиент Nylas (https://nylas.com/), инструментарий для работы с Git GitKraken (https://www.gitkraken.com/), система анализа и визуализации SQL-запросов Wagon (https://www.wagonhq.com/), система ведения блогов WordPress Desktop, BitTorrent-клиент WebTorrent Desktop (https://webtorrent.io/desktop), а также официальные клиенты к таким сервисам, как Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code и Discord. Всего в каталоге программ Electron представлено (https://electronjs.org/apps) около 800 приложений. Для упрощения разработки новых приложений подготовлен набор типовых демонстрационных приложений (https://github.com/electron/electron-api-demos), включающих примеры кода для решения различных задач.
URL: https://electronjs.org/blog/electron-6-0
Новость: https://www.opennet.ru/opennews/art.shtml?num=51196