version de la plateforme , qui fournit un cadre autonome pour le développement d'applications utilisateur multiplateformes, utilisant comme base les composants de Chromium, V8 et Node.js. Le changement significatif du numéro de version est lié à la mise à jour vers la base de code , plateforme et du moteur JavaScript V8 7.3. Auparavant la fin du support des systèmes Linux 32 bits est actuellement reportée et le lancement
5.0 y compris dans les versions 32 bits.
Parmi dans l'API spécifique à Electron :
- L'API a poursuivi la conversion des gestionnaires asynchrones, précédemment utilisant des appels de retour, en une forme basée sur le mécanisme de . Le support de Promise a été ajouté dans l'API Cookies et dans les méthodes app.getFileIcon, contentTracing.[getCategories| startRecording| stopRecording], debugger.sendCommand,
shell.openExternal, webContents.[loadFile| loadURL| zoomLevel| zoomFactor] et win.capturePage; - Ajout de la possibilité d'obtenir des informations sur les couleurs système dans
macOS, en utilisant les appels systemPreferences.getAccentColor,
systemPreferences.getColor et systemPreferences.getSystemColor; - Ajout de la fonction process.getProcessMemoryInfo, fournissant des statistiques sur la consommation de mémoire du processus actuel;
- Dans le module « remote », représentant le mécanisme IPC pour interagir entre le processus de rendu de la page actuelle et le processus principal, des fonctionnalités supplémentaires ont été ajoutées pour filtrer les requêtes externes afin d'obtenir un contrôle total sur l'accès à l'IPC. Le support des filtres a été ajouté pour les appels remote.getBuiltin, remote.getCurrentWindow, remote.getCurrentWebContents et webview.getWebContents;
- Ajout de la possibilité de gérer plusieurs instances de BrowserViews à partir d'un seul objet BrowserWindow;
- Dans les applications empaquetées, addition de manière par défaut le menu de l'application, même si l'application ne définit pas explicitement ce menu et n'ajoute pas de gestionnaire d'événements pour la fermeture de la fenêtre;
- Le mode de travail d'isolation sandbox mixte est activé par défaut, où le processus de rendu s'exécute également dans le sandbox;
- Ajout de la variable d'environnement « ELECTRON_DISABLE_SANDBOX » pour désactiver l'isolation sandbox, par exemple, si l'application s'exécute déjà dans un conteneur basé sur Docker;
- Pour améliorer la sécurité, par défaut, les paramètres nodeIntegration et webviewTag sont désactivés;
- L'API de vérification orthographique (Spellchecker) a été convertie en un mode de fonctionnement non-bloquant, où le résultat de la vérification est retourné de manière asynchrone;
- Dépréciés et seront supprimés dans la prochaine version :
fichiers exécutables mksnapshot pour arm et arm64, ServiceWorker dans WebContents, appels webFrame.setIsolated*, possibilité d'appeler directement les modules electron.screen,
child_process,
fs,
os et path (doivent maintenant être appelés via remote.require en utilisant un gestionnaire dans WebContents isolé).
Rappelons qu'Electron permet de créer n'importe quelle application graphique utilisant des technologies web, dont la logique est définie en JavaScript, HTML et CSS, et dont la fonctionnalité peut être étendue grâce à un système de modules. Les développeurs ont accès aux modules Node.js, ainsi qu'à une API étendue pour créer des dialogues natifs, intégrer des applications, créer des menus contextuels, intégrer avec le système de notifications, manipuler des fenêtres et interagir avec les sous-systèmes de Chromium.
Contrairement aux applications Web, les programmes basés sur Electron sont livrés sous forme de fichiers exécutables autonomes, non liés à un navigateur. Les développeurs n'ont pas besoin de se soucier du portage de l'application pour différentes plateformes, Electron permet la compilation pour tous les systèmes pris en charge par Chromium. Electron fournit également pour organiser la livraison et l'installation automatiques des mises à jour (les mises à jour peuvent être livrées soit à partir d'un serveur séparé, soit directement depuis GitHub).
Parmi les programmes construits sur la plateforme Electron, on peut noter l'éditeur , client de messagerie , outil pour travailler avec Git , système d'analyse et de visualisation des requêtes SQL , système de gestion de blogs WordPress Desktop, client BitTorrent , ainsi que des clients officiels pour des services tels que Skype, Signal, Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code et Discord. Il y a environ 760 applications. Pour simplifier le développement de nouvelles applications, un ensemble de modèles a été préparé. , incluant des exemples de code pour résoudre diverses tâches.
Source : opennet.ru
