Gli sviluppatori del framework open source hanno annunciato il rilascio di Electron 30.0.0. Un aggiornamento che porta con sé una serie di nuove funzionalità, miglioramenti e aggiornamenti finalizzati a potenziare la developer experience delle applicazioni per il Desktop. Questa release include aggiornamenti a Chromium 124.0.6367.49, al JavaScript engine V8 12.4 e a Node.JS 20.11.1. Attualizzando la piattaforma di sviluppo.
Le novità di Electron 30.0.0
Tra le novità più rilevanti del rilascio, Electron 30.0.0 introduce il supporto per l'ASAR Integrity fuse in ambiente Windows. Una funzionalità che garantisce l'integrità del codice delle applicazioni tramite un meccanismo di checking ma che per funzionare correttamente richiede un aggiornamento degli strumenti di packaging del framework. Sono stati poi aggiunti i moduli di processo WebContentsView
e BaseWindow
. Questi ultimi sostituiscono BrowserView
, da considerarsi deprecato, offrendo un'API più robusta e flessibile per l'incorporamento di contenuti Web nei progetti.
Electron 30 has shipped 🚢!
In this release:
❗️Added WebContentsView & BaseWindow, deprecating BrowserViews
❗️ASAR Integrity fuse now enabled by default on Windows
🛠️Bug fixes, more features & improvementsMore details and release notes:https://t.co/Sliucb6NLE
— Electron (@electronjs) April 23, 2024
Un'altra feature degna di nota riguarda il supporto per l'API del File System che consente alle applicazioni di interagire in modo più semplici con i file locali. L'ultima versione del framework ha introdotto anche una serie di nuove funzionalità tra cui una proprietà di istanza navigationHistory
nell'API webContents
con cui recuperare dalla cronologia URL e titoli di qualsiasi voce di navigazione. È interessante anche il nuovo metodo BrowserWindow.isOccluded()
che consente di verificare lo stato di "occlusione" delle applicazioni.
iframe cross-origin e BrowserView.setAutoResize su macOS
Con Electron 30.0.0 è stato modificato inoltre il comportamento degli iframe cross-origin che ora devono fare riferimento alla Permission Policy per l'accesso alle funzionalità. È stata poi rimossa l'opzione --disable-color-correct-rendering
da riga di comando. Chromium infatti gestisce meglio gli spazi colore rendendola non più necessaria.
Con l'ultimo rilascio viene modificato il comportamento di BrowserView.setAutoResize
su macOS. BrowserView
funge da wrapper intorno alla nuova API WebContentsView
mentre, in precedenza, la funzione setAutoResize
di BrowserView
era supportata tramite autoresizing su macOS e grazie ad un algoritmo personalizzato su Windows e Linux.
Da segnalare infine il supporto per la flag CLI NODE_EXTRA_CA_CERTS
di Node.JS. Con essa si avranno maggiori opportunità di personalizzazione nella gestione dei certificati SSL/TLS. Una novità particolarmente utile per le applicazioni che necessitano di configurazioni di sicurezza più dettagliate.