Aller au contenu principal

Electron 32.0.0

· 5 mins de lecture

Electron 32.0.0 est disponible ! Il inclut une mise à niveau vers Chromium 128.0.6613.36, V8 12.8, et Node 20.16.0.


L’équipe d'Electron est heureuse d’annoncer la sortie d’Electron 32.0.0 ! Vous pouvez l'installer avec npm via npm install electron@latest ou le télécharger sur notre site web de téléchargement de version. Vous obtiendrez plus de détails sur cette version en lisant ce qui suit.

Si vous avez des commentaires, veuillez les partager avec nous sur [Twitter] (https://twitter.com/electronjs) ou Mastodon, ou joignez-vous à notre communauté [Discord] (https://discord.com/invite/electronjs)! Les bogues et les demandes de fonctionnalités peuvent être signalés dans l'[outil de suivi des problèmes] d’Electron (https://github.com/electron/electron/issues).

Changements notables

  • Ajout d'un nouvel historique de version de l'API dans notre documentation, une fonctionnalité créée par @piotrpdev dans le cadre de Google Summer of Code. Vous pouvez en savoir plus à ce sujet dans cet article de blog. #42982
  • Suppression de l'extension File.\path non standard de l'API Web File. #42053
  • #42993
  • Ajout des API existantes suivantes liées à la navigation à webcontents.navigationHistory: canGoBack, goBack, canGoForward, goForward, canGoToOffset, goToOffset, clear. Les API de navigation précédentes est désormais obsolète. #41752

Changements de la Stack

Electron 32 met à jour Chromium de 126.0.6478.36 à 128.0.6613.36, Node de 20.14.0 à 20.16.0, et V8 de 12.6 à 12.8.

Nouvelles fonctionnalités

  • Ajout d'une prise en charge pour répondre aux requêtes d'authentification initiées par le processus utilitaire via l'événement de 'connexion' du module app. #43317
  • Ajout de la propriété cumulativeCPUUsage à la structure CPUUsage, qui retourne le total de secondes du temps CPU utilisé depuis le démarrage du processus. #41819
  • Ajout des API existantes suivantes liées à la navigation à webContents.navigationHistory: canGoBack, goBack, canGoForward, goForward, canGoToOffset, goToOffset, clear. #41752
  • Extension de WebContentsView pour accepter les objets webContentspréexistants. #42086
  • Ajout d'une nouvelle propriété prefersReducedTransparency à nativeTheme, qui indique si l'utilisateur a choisi de réduire la transparence au niveau du système d'exploitation via les paramètres d'accessibilité du système. #43137
  • . #42993
  • Activation de l'API Windows Control Overlay sur Linux. #42681
  • Activation de la compression zstd dans les requêtes réseau. #43300

Changements majeurs avec rupture de compatibilité

Supprimé: File.path

The nonstandard path property of the Web File object was added in an early version of Electron as a convenience method for working with native files when doing everything in the renderer was more common. However, it represents a deviation from the standard and poses a minor security risk as well, so beginning in Electron 32.0 it has been removed in favor of the webUtils.getPathForFile method.

// Avant (renderer)
const file = document.querySelector('input[type=file]');
alert(`Le fichier téléchargé était : ${file.path}`);
// Après (renderer)
const file = document.querySelector('input[type=file]');
electron.showFilePath(file);

// Après (preload)
const { contextBridge, webUtils } = require('electron');

contextBridge.exposeInMainWorld('electron', {
showFilePath(file) {
// Il est préférable, si possible, de ne pas exposer le chemin
// d'accès complet au contenu web.
const path = webUtils.getPathForFile(file);
alert(`Le chemin d'accès au fichier téléchargé était: ${path}`);
},
});

Obsolète : clearHistory\, canGoBack\, goBack\, canGoForward\, goForward\, goToIndex\, canGoToOffset\, goToOffset dans WebContents

Navigation-related APIs on WebContents instances are now deprecated. These APIs have been moved to the navigationHistory property of WebContents to provide a more structured and intuitive interface for managing navigation history.

// Obsolète
win.webContents.clearHistory();
win.webContents.canGoBack();
win.webContents.goBack();
win.webContents.canGoForward();
win.webContents.goForward();
win.webContents.goToIndex(index);
win.webContents.canGoToOffset();
win.webContents.goToOffset(index);

// Remplacer par
win.webContents.navigationHistory.clear();
win.webContents.navigationHistory.canGoBack();
win.webContents.navigationHistory.goBack();
win.webContents.navigationHistory.canGoForward();
win.webContents.navigationHistory.goForward();
win.webContents.navigationHistory.canGoToOffset();
win.webContents.navigationHistory.goToOffset(index);

Comportement modifié : Le dossier databases dans userData sera supprimé

Si vous avez un dossier appelé databases dans le dossier retourné par app.getPath('userData'), il sera supprimé au premier lancement d'Electron 32. Le dossier databases était utilisé par WebSQL, qui a été supprimé dans Electron 31. Chromium effectue désormais un nettoyage qui supprime ce dossier. Voir issue #45396.

Fin du support pour 29.x.y

Electron 29.x.y a atteint sa fin de support conformément à la politique de support du projet. Nous encourageons les développeurs à mettre à jour vers une version plus récente d'Electron et de faire de même avec leurs applications.

E32 (Aug'24)E33 (Oct'24)E34 (Jan'25)
32.x.y33.x.y34.x.y
31.x.y32.x.y33.x.y
30.x.y31.x.y32.x.y

Et maintenant ?

À court terme, vous pouvez compter sur l’équipe pour continuer a se concentrer sur le développement des principaux composants qui composent Electron, notamment Chromium, Node et V8.

You can find Electron's public timeline here.

More information about future changes can be found on the Planned Breaking Changes page.