Firefox obtient une API de scripts utilisateur

Mozilla travaille actuellement à la mise en place d'une API UserScripts WebExtensions dans le navigateur Web Firefox de l'entreprise.

Firefox, tout comme Google Chrome et de nombreux autres navigateurs Web, prend en charge les scripts d’utilisateur. Ces scripts sont exécutés au chargement de la page pour ajouter, supprimer ou modifier les fonctionnalités de la page chargée.

Les scripts utilisateur ont plusieurs objectifs: ajouter des options de téléchargement sur les sites vidéo et modifier l'apparence des pages Web.

Mozilla résout plusieurs problèmes liés aux scripts utilisateur avec la future API User Scripts:

  • Problèmes de performances - meilleure isolation des scripts grâce à des méthodes efficaces.
  • Problèmes de fiabilité - problèmes lors du chargement de la page et des conditions de concurrence entre le chargement de la page et l'injection de script.
  • Problèmes de sécurité - l'utilisation de sandbox pour les scripts utilisateur individuels réduit l'impact que les scripts peuvent avoir les uns sur les autres.

La nouvelle API exécute chaque script utilisateur dans son propre sandbox pour les isoler les uns des autres. Il s'agit d'une approche différente de la manière dont les scripts de contenu sont gérés à partir d'extensions telles que Greasemonkey ou Tampermonkey, car elles sont exécutées dans le même processus.

La prise en charge de la fourniture de scripts utilisateur avec un ensemble de fonctions, par exemple les fonctions Greasemonkey GM_, est également prise en charge.

Le plan initial de Mozilla était d'introduire le support dans Firefox 63, mais l'introduction a été reportée. La nouvelle cible est Firefox 68 Stable.

L'API WebExtensions User Scripts

L'API des scripts utilisateur de Mozilla est déjà disponible dans Firefox. Il est activé par défaut dans Firefox Nightly (version 68) et désactivé par défaut dans Firefox Stable (version 66) et Firefox Beta (version 67).

Les utilisateurs de Firefox peuvent procéder comme suit pour changer le statut de l'API:

  1. Chargez about: config dans la barre d'adresse de Firefox.
  2. Confirmez que vous serez prudent si le message d'avertissement est affiché.
  3. Recherchez extensions.webextensions.userScripts.enabled.
  4. Définissez le statut de la préférence sur True pour activer le support ou sur False pour le désactiver.
  5. Redémarrez Firefox.

Les extensions telles que Greasemonkey ou Tampermonkey doivent implémenter la nouvelle API avant de pouvoir être utilisée.

Mots de clôture

L’API Scripts d’utilisateur arrive enfin et elle devrait résoudre les problèmes identifiés lors de l’utilisation de scripts d’utilisateur dans Firefox. Il reste à voir s'il y a des inconvénients à la mise en œuvre; vous pouvez suivre le méta-bogue sur le site Web de suivi des bogues de Mozilla pour rester au courant.

Maintenant, vous : Qu'attendez-vous de l'API de scripts utilisateur?