Que se passe-t-il avec les extensions Chrome ?

En juillet, nous avons lancé une nouvelle série d'articles de blog pour vous tenir informé des derniers développements en matière d'extensions. Grâce à vos précieux commentaires et à notre collaboration continue avec d'autres fournisseurs de navigateurs du groupe de la communauté WebExtensions, nous continuons à améliorer les API d'extension et à renforcer la cohérence entre les différents navigateurs.

Bienvenue dans l'édition d'octobre ! Dans ce post, nous allons passer en revue certaines des modifications apportées par l'équipe chargée de l'extension Chrome au cours des derniers mois, ainsi que les nouvelles fonctionnalités qui seront lancées dans le courant de l'année. C'est parti !

Nouvelles API et fonctionnalités pour les extensions

Dans cette section, nous vous présentons quelques lancements importants concernant l'API, nous passons brièvement en revue d'autres améliorations apportées à l'API et nous vous présentons les prochaines versions. Tous les lancements sont actuellement disponibles dans la dernière version bêta. Pour en savoir plus, consultez le calendrier des versions de Chromium.

Points forts

Problèmes connus résolus

L'équipe chargée des extensions a travaillé activement à la résolution des problèmes de stabilité de Manifest V3. Chrome 116 a lancé de nombreuses améliorations qui nous ont permis de faire des progrès significatifs pour combler l'écart de fonctionnalités entre Manifest V2 et V3. Dans Chrome 120, nous aurons fini de combler toutes les lacunes prioritaires de la plate-forme et nous fermerons tous les bugs critiques répertoriés sur la page des problèmes connus. Toutes les fonctionnalités sont actuellement disponibles dans Chrome 120 Canary, à l'exception de la compatibilité de fileHandler avec ChromeOS Lacros et de l'API userScripts, qui sera disponible dans le courant du mois. Pour en savoir plus, consultez la nouvelle page des problèmes connus.

Stabilité améliorée pour les service workers

Les problèmes de stabilité liés aux service workers ont été résolus. Dans Chrome 116, nous avons ajouté des notifications de conservation fortes aux API d'extension qui affichent une invite utilisateur, et nous avons amélioré la compatibilité avec WebSockets (voir le tutoriel Utiliser WebSockets dans les extensions). À partir de Chrome 118, un service worker reste actif pendant une session active de l'API Debugger.

Pour en savoir plus, consultez nos nouvelles consignes relatives aux service workers. Si vos utilisateurs rencontrent toujours des problèmes de stabilité liés aux service workers dans les versions de Chrome après la version 119, veuillez nous en informer.

Sécurité accrue

Auparavant, l'accès à certaines URL chrome:// à l'aide de tabs.update(), tabs.create et windows.create() envoyait une erreur ou provoquait le plantage de Chrome. De plus, tabs.update() n'a pas pu ouvrir d'URL JavaScript. Dans Chrome 117, nous avons augmenté le nombre d'URL chrome:// compatibles et le blocage des URL JavaScript s'applique désormais également à toutes les méthodes d'API d'extension.

Dans Chrome 117, les utilisateurs recevront des notifications proactives sur la page Extensions Chrome si une extension qu'ils ont installée n'est plus disponible sur le Chrome Web Store. Cela peut se produire si le développeur annule la publication de l'extension, si elle a été retirée pour non-respect des règles ou si elle est identifiée comme contenant un logiciel malveillant. Pour en savoir plus, consultez Le contrôle de sécurité est disponible sur la page chrome://extensions.

Dans Chrome 118, les extensions ne seront pas autorisées à accéder aux URL file:// à l'aide des API chrome.tabs et chrome.windows, sauf si l'option "Autoriser l'accès aux URL de fichiers" est activée sur la page d'informations de l'extension. Consultez la discussion WECG.

Autres lancements d'API

  • API Runtime:à partir de Chrome 116, vous pouvez utiliser runtime.getContexts() pour récupérer des informations sur les contextes actifs. Par exemple, vous pouvez vérifier si un document hors écran est actif.
  • API du panneau latéral Dans Chrome 116, vous pouvez utiliser sidepanel.open() pour ouvrir le panneau latéral de l'extension par programmation en réponse à un geste de l'utilisateur, comme un clic sur le menu contextuel.
  • API TabCapture : ajout de la possibilité d'appeler getMediaStreamId() à partir du service worker de l'extension et d'obtenir un objet MediaStream à partir d'un ID de flux dans un document hors écran dans Chrome 116. Consultez Enregistrement audio et capture d'écran pour obtenir des exemples.
  • API DeclarativeNetRequest:la valeur par défaut de la propriété isUrlFilterCaseSensitive a été remplacée par false dans Chrome 118.

À venir...

Nous prévoyons de traiter tous les éléments restants sur la page des problèmes connus avec la sortie de Chrome 120. Nous prévoyons également d'ajouter les fonctionnalités suivantes:

  • L'API UserScripts permettra aux gestionnaires de scripts utilisateur de coordonner quand et comment injecter un ensemble de scripts utilisateur dans des pages Web. Pour en savoir plus, consultez la proposition WECG.
  • L'API ReadingList permet aux développeurs de créer, lire, mettre à jour et supprimer des métadonnées situées dans le panneau "Liste de lecture" du panneau latéral. Regardez la vidéo Nouveautés des extensions Chrome pour suivre l'annonce.
  • Suite aux commentaires reçus dans le groupe de la communauté des extensions Web, nous avons considérablement augmenté la limite concernant les ensembles de règles statiques activés de 10 à 50. En outre, nous allons faire passer le nombre total d'ensembles de règles statiques autorisés de 50 à 100. Cette fonctionnalité est actuellement disponible dans Canary.
  • L'API File Handling sera disponible pour les extensions ChromeOS à partir de ChromeOS 120. Elle permet aux extensions d'ouvrir des fichiers avec les types MIME et les extensions spécifiés de la même manière que la gestion des fichiers sur une plate-forme Web.
  • Les extensions pourront utiliser l'API Push Web via self.registration.pushManager.subscribe() sans afficher de notification visible par l'utilisateur en définissant userVisibleOnly sur false. Les notifications push sont ainsi une alternative plus simple aux WebSockets dans les service workers (MV3) pour la communication client-serveur asynchrone. Pour en savoir plus, consultez le bug sur Chromium et la discussion WECG.

Consultez régulièrement la page Nouveautés des extensions pour être informé dès que ces fonctionnalités seront disponibles dans la version bêta de Chrome.

Mises à niveau de la documentation

Nous avons également amélioré et enrichi notre documentation. Veuillez continuer à poser des questions sur chromium-group et à signaler des problèmes liés à la documentation.

Points forts

Plus d'actualités

À venir...

  • Documentation de référence et tutoriel sur l'API User Scripts
  • Tutoriel et exemples Firebase
  • Documentation de référence de l'API ReadingList

Repensez le Chrome Web Store 🌈

Capture d'écran de la page d'accueil du Chrome Web Store.
La nouvelle page d'accueil du Chrome Web Store

Au début du mois, nous vous avons annoncé le lancement en avant-première de la nouvelle version du Chrome Web Store, comme nous l'avions annoncé lors de la conférence Google I/O. Découvrez-le par vous-même ! https://chromewebstore.google.com/. Voici quelques modifications importantes:

  • Augmentation de la liste des catégories, qui passe d'une liste de 11 à une nouvelle liste de sept groupes de catégories sur trois.
  • Amélioration de la saisie semi-automatique dans la recherche.
  • Les captures d'écran s'affichent désormais dans une qualité nettement supérieure. Si vous ne l'avez pas déjà fait, vous pouvez importer des captures d'écran au format 1 280 x 800.
  • Les réponses aux questions dans l'onglet "Assistance" affichent désormais des nouvelles lignes.
  • Lorsque vous répondez aux avis des utilisateurs et aux questions d'assistance, un badge "Développeur" s'affiche désormais à côté de votre nom dans votre réponse.
  • Vous pouvez fournir aux utilisateurs un lien direct vers la page des avis en ajoutant "/reviews" à la fin de l'URL de votre article. Par exemple: https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews.

Merci à tous ceux qui nous ont fait part de vos commentaires concernant le groupe chromium-google. N'hésitez pas à participer à la discussion ou à envoyer vos commentaires directement à l'équipe CWS à l'aide de l'élément de menu Envoyer des commentaires:

Envoyer des commentaires sur la page du Chrome Web Store
Envoyer des commentaires sur la page du Chrome Web Store

Vous pouvez également envoyer un formulaire de demande d'auto-désignation pour figurer dans la collection "Le choix des rédactions". Restez à l'écoute, car des améliorations seront bientôt apportées au tableau de bord du développeur.

💡 Le saviez-vous ?

  • Nous avons publié une nouvelle vidéo sur le débogage des extensions Chrome. Il aborde de nombreux sujets que vous connaissez peut-être déjà, mais il partage également quelques astuces utiles pour utiliser les outils de développement dans les extensions.
  • Vous devez désormais fournir des règles de confidentialité pour chaque extension. Auparavant, vous ne pouviez ajouter qu'une seule règle de confidentialité par compte de développeur, mais il était gênant de disposer de plusieurs extensions dans un seul compte de développeur. Cette nouvelle interface est disponible dans l'onglet Confidentialité de votre élément dans le tableau de bord du développeur. Cela signifie que les règles de confidentialité au niveau du compte ne sont plus acceptées.
    Capture d'écran de la zone "Règles de confidentialité"
    Capture d'écran de la section dédiée aux règles de confidentialité

Nous contacter 🙌

Nous avons continué à contacter la communauté des développeurs d'extensions via des entretiens individuels, en lançant de nouveaux programmes et en participant à des sommets. Voici quelques exemples:

  • Les extensions du programme Experts Google Developers ont été lancées en août. Nous avons créé plus d'une douzaine de nouveaux GDE axés sur les extensions Chrome dans le monde entier, qui nous ont fait part de leurs commentaires. Le programme vit une période passionnante !
  • Nous avons participé au TPAC (conférence annuelle du W3C) au sein du Web Extensions Community Group, et avons rencontré des représentants de Firefox et Safari, ainsi que plusieurs membres de la communauté. Nous avons fait des progrès significatifs sur plusieurs sujets, y compris l'adoption d'API d'extension plus cohérentes, l'élaboration d'une spécification et la création d'une nouvelle suite de tests en nous appuyant sur les tests de plate-forme Web. Lisez les minutes complètes dans le dépôt WECG.
  • La semaine dernière, l'équipe chargée de l'extension a participé au Sommet des développeurs Ad-Filtering à Amsterdam. Ils ont rencontré plusieurs d'entre vous lors d'une conversation autour d'un café qu'ils ont organisée avant la semaine du sommet et pendant les horaires d'ouverture le vendredi.
    Équipe chargée de l'extension du sommet des développeurs sur le filtrage des annonces
    Équipe chargée de l'extension du sommet des développeurs sur le filtrage des annonces

Même si vous n'avez pu assister à aucun de ces événements, vous pouvez continuer à vous impliquer en posant des questions au groupe Google chromium-extensions, en suivant les discussions avec les partenaires de navigateur sur le WECG et en signalant les problèmes de documentation.

Merci encore de faire partie de la communauté des développeurs d'extensions !