Подготовлен релиз платформы Electron 24.0.0, которая предоставляет самодостаточный фреймворк для разработки многоплатформенных пользовательских приложений, использующий в качестве основы компоненты Chromium, V8 и Node.js. Значительное изменение номера версии связано с обновлением до кодовой базы Chromium 112, платформы Node.js 18.14.0 и JavaScript-движка V8 11.2.
Среди изменений в новом выпуске:
- Изменена логика обработки размера изображения в методе nativeImage.createThumbnailFromPath(path, size), в котором параметр “maxSize” заменён на “size” и теперь отражает фактический размер создаваемой миниатюры, а не максимальный (т.е. если размер меньше будет применено масштабирование).
- Объявлены устаревшими методы BrowserWindow.setTrafficLightPosition(position) и BrowserWindow.getTrafficLightPosition(), вместо которых следует использовать BrowserWindow.setWindowButtonPosition(position) и BrowserWindow.getWindowButtonPosition().
- В методе cookies.get() добавлена возможность фильтрации Cookie при режиме HttpOnly.
- В метод shell.openExternal() добавлен параметр logUsage.
- В webRequest появилась возможность фильтрации запросов по типам.
- В webContents добавлено событие devtools-open-url для открытия нового окна.
- В callback-обработчик ses.setDisplayMediaRequestHandler() добавлен флаг enableLocalEcho для отражения внешнего звукового ввода в локальный выходной поток.
- В файле конфигурации по умолчанию включена общая оптимизация, использующая информацию, полученную при компиляции всех модулей.
Платформа Electron позволяет создавать любые графические приложения с использованием браузерных технологий, логика работы которых определяется на JavaScript, HTML и CSS, а функциональность может быть расширена через систему дополнений. Разработчикам доступны модули Node.js, а также расширенный API для формирования нативных диалогов, интеграции приложений, создания контекстных меню, интеграции с системой вывода уведомлений, манипуляции окнами, взаимодействия с подсистемами Chromium.
В отличие от web-приложений, программы на базе Electron поставляются в виде самодостаточных исполняемых файлов, не привязанных к браузеру. При этом разработчику не нужно заботиться о портировании приложения для различных платформ, Electron обеспечит возможность сборки для всех систем, поддерживаемых в Chromium. Electron также предоставляет средства для организации автоматической доставки и установки обновлений (обновления можно доставлять как с отдельного сервера, так и напрямую с GitHub).
Из программ, построенных на базе платформы Electron можно отметить редактор Atom, почтовый клиент Mailspring, инструментарий для работы с Git GitKraken, система ведения блогов WordPress Desktop, BitTorrent-клиент WebTorrent Desktop, а также официальные клиенты к таким сервисам, как Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code и Discord. Всего в каталоге программ Electron представлено 734 приложения. Для упрощения разработки новых приложений подготовлен набор типовых демонстрационных приложений, включающих примеры кода для решения различных задач.