Llega la nueva versión de Electron 5.0.0 y continua el soporte para 32 bits
Ya está entre nosotros la nueva versión de la plataforma Electron 5.0.0, que proporciona un marco auto suficiente para el desarrollo de aplicaciones multiusuario, utilizando los componentes de Chromium, V8 y Node.js.
Este cambio significativo en el número de versión se debe a la actualización a la base de código de Chromium 73, a la plataforma Node.js 12 y al motor V8 7.3 de JavaScript. La suspensión previamente esperada del soporte para sistemas Linux de 32 bits se ha pospuesto por ahora y la versión 5.0 también está disponible en versiones de 32 bits.
Sobre Electron
Para quienes desconocen aún de Electron, deben saber que este marco permite crear cualquier aplicación gráfica utilizando tecnologías de navegador, cuya lógica se define en JavaScript, HTML y CSS y la funcionalidad se puede extender a través del sistema complementario.
Los desarrolladores tienen acceso a los módulos Node.js, así como a una API avanzada para generar diálogos nativos, integrar aplicaciones, crear menús contextuales, integrarse con el sistema para mostrar notificaciones, manipular ventanas e interactuar con los subsistemas de Chromium.
A diferencia de las aplicaciones basadas en web, los programas basados en Electron se entregan como archivos ejecutables independientes que no están vinculados al navegador.
En este caso, el desarrollador no tiene que preocuparse por portar la aplicación para varias plataformas, Electron proporcionará la capacidad de compilar para todos los sistemas compatibles con Chromium.
Electron también proporciona herramientas para organizar la entrega automática y la instalación de actualizaciones (las actualizaciones se pueden entregar desde un servidor independiente o directamente desde GitHub).
Desde los programas creados sobre la base de la plataforma Electron, podemos mencionar el editor Atom, el cliente de correo electrónico Nylas, las herramientas para trabajar con GitKraken, el sistema de visualización y análisis de consultas Wagon SQL, el sistema de blogs WordPress Desktop, el cliente WebTorrent Desktop BitTorrent.
Y también los clientes oficiales de servicios como Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code y Discord.
¿Que hay de nuevo en Electron 5.0.0?
Como se mencionaba al inicio, esta nueva liberación de Electron 5.0.0 continua con el soporte para sistemas de 32 bits que anteriormente se había anunciado su discontinuación desde versiones pasadas (puedes leer el articulo al respecto en el siguiente enlace).
Mientras que en este lanzamiento los desarrolladores declararon obsoleto y se eliminará en la próxima versión: los ejecutables de mksnapshot para arm and arm64, ServiceWorker en WebContents, llamadas a webFrame.setIsolated *, la capacidad de llamar directamente a los módulos electron.screen, child_process, fs, os y path (ahora debe llamar por control remoto utilizando el controlador en contenidos web aislados).
En cuanto a las novedades de Electron 5.0.0 podemos destacar que se agregó la variable de entorno “ELECTRON_DISABLE_SANDBOX” para deshabilitar el aislamiento de sandbox, por ejemplo, si la aplicación ya se está ejecutando en un contenedor basado en Docker;
Para mayor seguridad, las configuraciones nodeIntegration y webviewTag están deshabilitadas por defecto.
La API del corrector ortográfico se cambia al modo de funcionamiento sin bloqueo, en el que el resultado de la comprobación se devuelve en modo asíncrono.
En las aplicaciones empaquetadas, se proporciona la adición de un menú de aplicación predeterminado, incluso si la aplicación no define explícitamente este menú o agrega un controlador de eventos de cierre de ventana.
La API continúa traduciendo los controladores asíncronos que anteriormente utilizaban las llamadas de devolución de llamada en un formulario basado en el mecanismo de Promise.
Así mismo el soporte para Promise se ha agregado a la API de Cookies y en la aplicación.getFileIcon, métodos de ContentTracing. [GetCategories | startRecording | stopRecording], debugger.sendCommand, shell.openExternal, webContents. [loadFile | loadURL | zoomLevel | zoomFactor] y win.capturePage.
Otros cambios
De los demás cambios importantes en este lanzamiento son:
- La capacidad de obtener información sobre los colores del sistema en macOS utilizando systemPreferences.getAccentColor, systemPreferences.getColor y systemPreferences.getSystemColor.
- La función process.getProcessMemoryInfo, que proporciona estadísticas sobre el consumo de memoria por el proceso actual.
- En el módulo “remoto”, que representa el mecanismo de IPC para la interacción entre el proceso de dibujo de la página actual y el proceso principal, se han agregado funciones adicionales para filtrar solicitudes externas para obtener un control completo sobre el acceso al IPC.
- Se agregó soporte de filtro para remote.getBuiltin, remote.getCurrentWindow, remote.getCurrentWebContents y webview.getWebContents.
- Se agregó la capacidad de administrar múltiples instancias de BrowserViews desde un solo objeto BrowserWindow.
El artículo Llega la nueva versión de Electron 5.0.0 y continua el soporte para 32 bits ha sido originalmente publicado en Linux Adictos.