Electron 7.0.0 est disponible et inclut les mises à jour vers Chromium 78, V8 7.8 et Node.js 12.8.1
ainsi que des méthodes IPC plus rapides

L’équipe de développement d’Electron a publié cette semaine la version 7.0.0 du framework. Electron est un framework de développement d'applications de bureau multiplateforme utilisant des technologies Web. Il est développé par GitHub et est basé sur le développement en C++. Electron 7.0.0 utilise Chromium 78, V8 7.8 et Node.js 12.8.1. Il apporte aussi d’autres fonctionnalités et améliorations comme de nouvelles méthodes IPC plus rapides et une nouvelle API nativeTheme pour lire et répondre aux changements de thème et de couleur de l'OS de l'utilisateur.

Electron est un framework de développement d’applications de bureau multiplateformes avec des technologies Web. Les composants centraux d’Electron sont Chromium, Node.js et V8. L'infrastructure est codée en Node.js, et l'interface est bâtie sur la base des outils Chromium, la partie open source de Google Chrome. Ils sont généralement mis à jour en synchronisation, conformément aux normes internationales, afin de fournir les dernières fonctionnalités de JavaScript, des améliorations de performances et des correctifs de sécurité.

Nom : t01e8f7dd1ee323138f.jpg
Affichages : 4462
Taille : 24,6 Ko

Cette nouvelle version du framework inclut les mises à niveau vers Node.js 12.8.1, Chromium 78 et V8 7.8. L'équipe a ajouté une version de Window sur ARM 64 bits, des méthodes IPC plus rapides, une nouvelle API nativeTheme, et d'autres fonctionnalités. Voici un aperçu des fonctionnalités et améliorations qu’apporte Electron 7.0.0.

Changements notables dans Electron 7.0.0

  • Electron 7.0 est compatible avec Chromium 78, V8 7.8 et Node.js 12.8.1 ;
  • ajout d’une version de Windows pour les architectures Arm 64 bits ;
  • ajout des méthodes ipcRenderer.invoke() et ipcMain.handle() pour les IPC asynchrones de type requête/réponse. Celles-ci sont fortement recommandées sur le module distant ;
  • ajout d’une nouvelle API nativeTheme pour lire les modifications apportées aux thèmes et aux palettes de couleurs du système d'exploitation et y répondre ;
  • basculement vers un nouveau générateur de définitions TypeScript pour générer des définitions plus précises à partir de classes de modèles C#. L’objectif de ceci est de construire des applications Web fortement typées où les modèles côté serveur et côté client sont synchronisés ;
  • etc.

Quelques nouvelles fonctionnalités

  • ajout des options captureMode et maxFileSize à l'API Netlog ;
  • ajout d’un nouveau paramètre failureReason à la fonction de rappel (callback) webContents.print() pour distinguer le succès, l'échec et l'annulation ;
  • ajout de la méthode getBalls() à BrowserView ;
  • ajout de process.getBlinkMemoryInfo() ;
  • Prise en charge de l'événement de déplacement de la souris de l'API Tray sous Windows
  • l'API SystemPreferences.isDarkMode() est maintenant prise en charge sous Windows ;
  • l'API systemPreferences.isHighContrastColorScheme() est prise en charge sur macOS ;
  • activation de l'API de création de rapports W3C ;
  • BrowserWindow.setFocable a été implémenté sur macOS ;
  • ajout d'un événement always-on-top-changed pour macOS ;
  • etc.

Suppression des API obsolètes dans cette version

  • Tray.setHighlightMode() (macOS) ;
  • app.enableMixedSandbox() ;
  • app.getApplicationMenu() ;
  • app.setApplicationMenu() ;
  • powerMonitor.querySystemIdleState() ;
  • powerMonitor.querySystemIdleTime() ;
  • webFrame.setIsolatedWorldContentSecurityPolicy() ;
  • webFrame.setIsolatedWorldHumanReadableName() ;
  • webFrame.setIsolatedWorldSecurityOrigin().
  • etc.


Autres changements dans la version 7.0.0 d’Electron

  • Session.clearAuthCache() ne permet plus de filtrer les entrées de cache effacées ;
  • les interfaces natives sur macOS (menus, boîtes de dialogue, etc.) correspondent désormais automatiquement au réglage du mode sombre sur la machine de l'utilisateur ;
  • mis à jour du module électronique pour utiliser @electron/get ;
  • le fichier electron.asar n'existe plus. Tout script d'empaquetage qui dépend de son existence doit être mis à jour par les développeurs.
  • etc.

L’équipe du framework a aussi annoncé qu’Electron 4.x.y est arrivé en fin de vie conformément aux politiques d’assistance. À cet effet, elle recommande aux développeurs de passer à une version plus récente du framework. L’équipe a ajouté qu’à court terme, vous pouvez vous attendre à ce qu’elle continue à se concentrer sur le développement des principaux composants d’Electron, dont Chrome, Node.js et le moteur V8. L’idée est de sortir les nouvelles versions majeures d'Electron avec les nouvelles versions de ces composants environ chaque trimestre.

Sources : Electron, GitHub

Et vous ?

Qu'en pensez-vous ?

Voir aussi

Sortie de la version 4.0 d'Electron, le framework pour le développement d'applications de bureau multiplateformes

Faut-il utiliser Electron pour le développement d'applications de bureau ? Quels sont ses avantages et inconvénients ?

Flutter va bientôt permettre d'écrire de véritables applications multiplateformes y compris pour le desktop et pourrait rivaliser avec Electron