lanzamiento de la plataforma , que proporciona un marco autónomo para el desarrollo de aplicaciones de usuario multiplataforma, utilizando como base los componentes de Chromium, V8 y Node.js. El cambio significativo en el número de versión se debe a la actualización de la base de código , plataforma y el motor JavaScript V8 7.3. Anteriormente la finalización del soporte para sistemas Linux de 32 bits se ha pospuesto, y el lanzamiento
5.0 incluyendo en ensamblajes de 32 bits.
Entre en la API específica de Electron:
- En la API se ha continuado con la conversión de controladores asíncronos que anteriormente utilizaban llamadas de callback, en una forma basada en el mecanismo . El soporte para Promise se ha añadido en la API de Cookies y en los métodos app.getFileIcon, contentTracing.[getCategories| startRecording| stopRecording], debugger.sendCommand,
shell.openExternal, webContents.[loadFile| loadURL| zoomLevel| zoomFactor] y win.capturePage; - Se ha añadido la posibilidad de obtener información sobre los colores del sistema en
macOS, utilizando las llamadas systemPreferences.getAccentColor,
systemPreferences.getColor y systemPreferences.getSystemColor; - Se ha añadido la función process.getProcessMemoryInfo, que proporciona estadísticas sobre el consumo de memoria del proceso actual;
- En el módulo 'remote', que representa el mecanismo IPC para la interacción entre el proceso de renderización de la página actual y el proceso principal, se han agregado capacidades adicionales para filtrar solicitudes externas para obtener un control total sobre el acceso al IPC. El soporte para filtros se ha añadido a las llamadas remote.getBuiltin, remote.getCurrentWindow, remote.getCurrentWebContents y webview.getWebContents;
- Se ha añadido la posibilidad de gestionar múltiples instancias de BrowserViews desde un solo objeto BrowserWindow;
- En las aplicaciones empaquetadas se asegura la adición de un menú de aplicación por defecto, incluso si la aplicación no define explícitamente este menú y no añade un controlador de eventos para cerrar la ventana;
- Se ha activado por defecto el modo de trabajo combinado de aislamiento de sandbox, en el que también se ejecuta el proceso de renderización en sandbox;
- Se ha añadido la variable de entorno 'ELECTRON_DISABLE_SANDBOX' para desactivar el aislamiento de sandbox, por ejemplo, si la aplicación ya se ejecuta en un contenedor basado en Docker;
- Para aumentar la seguridad, por defecto se han desactivado las configuraciones nodeIntegration y webviewTag;
- La API de verificación de ortografía (Spellchecker) se ha cambiado a un modo no bloqueante, donde el resultado de la verificación se devuelve de manera asíncrona;
- Se han declarado obsoletas y se eliminarán en la próxima versión:
los archivos ejecutables mksnapshot para arm y arm64, ServiceWorker en WebContents, llamadas webFrame.setIsolated*, la posibilidad de llamar directamente a los módulos electron.screen,
child_process,
fs,
os y path (ahora deben llamarse a través de remote.require usando un controlador en WebContents aislado).
Recordemos que Electron permite crear cualquier aplicación gráfica utilizando tecnologías de navegador, cuya lógica de funcionamiento se define en JavaScript, HTML y CSS, y cuya funcionalidad se puede ampliar a través de un sistema de complementos. Los desarrolladores tienen acceso a módulos de Node.js, así como a una API ampliada para formar diálogos nativos, integrar aplicaciones, crear menús contextuales, integrar con el sistema de notificaciones, manipular ventanas e interactuar con subsistemas de Chromium.
A diferencia de las aplicaciones web, los programas basados en Electron se distribuyen como archivos ejecutables autónomos, no vinculados a un navegador. De este modo, el desarrollador no tiene que preocuparse por portar la aplicación a diferentes plataformas, Electron garantiza la posibilidad de construir para todos los sistemas soportados en Chromium. Electron también proporciona para organizar la entrega e instalación automática de actualizaciones (las actualizaciones se pueden entregar desde un servidor separado o directamente desde GitHub).
Entre las aplicaciones construidas sobre la plataforma Electron están el editor , cliente de correo , herramientas para trabajar con Git , sistema de análisis y visualización de consultas SQL , sistema de blogs WordPress Desktop, cliente BitTorrent , así como clientes oficiales para servicios como Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code y Discord. En total, hay alrededor de 850 aplicaciones en el catálogo de Electron. 760 aplicaciones. Para facilitar el desarrollo de nuevas aplicaciones, se ha preparado un conjunto de plantillas , que incluyen ejemplos de código para resolver diferentes tareas.
Fuente: opennet.ru
