È stata presentata la release della piattaforma Electron 40.0.0, che offre un framework autonomo per lo sviluppo di applicazioni utente multi-piattaforma, utilizzando come base i componenti di Chromium, V8 e Node.js.
Tra le novità del nuovo rilascio:
- Sono state aggiornate le versioni del motore browser Chromium 144, della piattaforma Node.js 24.11.1 e del motore JavaScript V8 14.4 (nella versione precedente erano utilizzati Chromium 142, Node.js 22.20.0 e V8 14.2).
- È stata aggiunta la supporto per il flag di terminazione del processo secondario "memory-eviction", utilizzato alla fine del processo per prevenire l'esaurimento della memoria libera nel sistema (OOM, out-of-memory).
- Nel rendering offscreen è stata aggiunta la supporto per l'output in formato RGBAF16 con spazio colore scRGB HDR.
- È stato aggiunto il metodo app.isHardwareAccelerationEnabled() per verificare l'attivazione dell'accelerazione hardware.
- Nell'API net.request è stata aggiunta l'opzione bypassCustomProtocolHandlers per ignorare la chiamata di gestori di protocollo aggiuntivi.
- Sono stati aggiunti metodi per attivare selettivamente strumenti per le persone con disabilità.
- È stata aggiunta la possibilità di importare texture esterne come oggetto VideoFrame, che rappresenta un fotogramma video.
- Sulla piattaforma Linux è diventata disponibile la proprietà systemPreferences.getAccentColor per ottenere informazioni sui colori accento di sistema utilizzati per evidenziare gli elementi attivi, oltre al colore del bordo della finestra attiva.
- È stata aggiunta la supporto per fornire accesso all'API File System, limitato alla sessione corrente.
- È stata aggiunta la supporto per il caricamento dinamico di moduli ESM in script pre-caricati (preload), per i quali è disabilitata l'isolamento del contesto (contextIsolation = false).
- È stata dichiarata obsoleta la possibilità di accesso all'API Clipboard dai processi che eseguono il rendering.
La piattaforma Electron consente di creare qualsiasi applicazione grafica utilizzando tecnologie web, la cui logica operativa è definita in JavaScript, HTML e CSS, mentre la funzionalità può essere ampliata tramite un sistema di plugin. Gli sviluppatori hanno accesso a moduli Node.js, nonché a un'API avanzata per la creazione di dialoghi nativi, integrazione delle applicazioni, creazione di menu contestuali, integrazione con il sistema di notifiche, manipolazione delle finestre e interazione con i sottosistemi di Chromium.
A differenza delle applicazioni web, i programmi basati su Electron vengono forniti come file eseguibili autonomi, non legati al browser. Gli sviluppatori non devono preoccuparsi di portare l'applicazione su diverse piattaforme, poiché Electron offre la possibilità di compilare per tutti i sistemi supportati da Chromium. Electron fornisce anche strumenti per organizzare la consegna automatica e l'installazione degli aggiornamenti (gli aggiornamenti possono essere inviati sia da un repository separato server, sia direttamente da GitHub).
Tra le applicazioni costruite sulla piattaforma Electron ci sono gli editor Atom e Visual Studio Code, il client di posta Mailspring, lo strumento per lavorare con Git GitKraken, il sistema di blogging WordPress Desktop, il client BitTorrent WebTorrent Desktop, e i clienti ufficiali per servizi come Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike e Discord. In totale, nel catalogo delle applicazioni Electron sono presenti 612 applicazioni. Per semplificare lo sviluppo di nuove applicazioni, è stato preparato un set di applicazioni dimostrative standard, che includono esempi di codice per risolvere vari compiti.
Fonte: opennet.ru
