Cela fait déjà quatre ans que Google a commencé les tests de Manifest V3, l'interface de programmation derrière les extensions sur Chrome. La mise à jour est controversée car elle rend les bloqueurs de publicités moins efficaces sous prétexte de protéger la confidentialité et la sécurité, et il se trouve que Google est la plus grande société de publicité au monde.Dans un billet, Google a communiqué le nouveau calendrier de la transition vers Manifest V3, qui implique de mettre fin à la prise en charge des anciennes extensions exécutées sur Manifest V2 et de forcer tout le monde à utiliser la nouvelle version de Manifest. Cette dernière version a été fustigée par l'Electronic Frontier Foundation, un défenseur des droits numériques, qui l'a jugée « « trompeuse et menaçante ».
Firefox pour sa part prévoit d'adopter Manifest V3, mais avec une approche différente.
En novembre 2019, Google a commencé à tester Manifest V3, l'interface de programmation derrière les plans de sécurité Chrome. Le code suivant montre les champs Manifest pris en charge pour les extensions, avec des liens vers la page décrivant chaque champ.
| Code JavaScript : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | { // Required "manifest_version": 2, "name": "My Extension", "version": "versionString", // Recommended "default_locale": "en", "description": "A plain text description", "icons": {...}, // Pick one (or none) "browser_action": {...}, "page_action": {...}, // Optional "action": ..., "author": ..., "automation": ..., "background": { // Recommended "persistent": false, // Optional "service_worker": }, "chrome_settings_overrides": {...}, "chrome_ui_overrides": { "bookmarks_ui": { "remove_bookmark_shortcut": true, "remove_button": true } }, "chrome_url_overrides": {...}, "commands": {...}, "content_capabilities": ..., "content_scripts": [{...}], "content_security_policy": "policyString", "converted_from_user_script": ..., "current_locale": ..., "declarative_net_request": ..., "devtools_page": "devtools.html", "event_rules": [{...}], "externally_connectable": { "matches": ["*://*.example.com/*"] }, "file_browser_handlers": [...], "file_system_provider_capabilities": { "configurable": true, "multiple_mounts": true, "source": "network" }, "homepage_url": "http://path/to/homepage", "import": [{"id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}], "incognito": "spanning, split, or not_allowed", "input_components": ..., "key": "publicKey", "minimum_chrome_version": "versionString", "nacl_modules": [...], "oauth2": ..., "offline_enabled": true, "omnibox": { "keyword": "aString" }, "optional_permissions": ["tabs"], "options_page": "options.html", "options_ui": { "chrome_style": true, "page": "options.html" }, "permissions": ["tabs"], "platforms": ..., "replacement_web_app": ..., "requirements": {...}, "sandbox": [...], "short_name": "Short Name", "signature": ..., "spellcheck": ..., "storage": { "managed_schema": "schema.json" }, "system_indicator": ..., "tts_engine": {...}, "update_url": "http://path/to/updateInfo.xml", "version_name": "aString", "web_accessible_resources": [...] } |
En novembre 2020, Google a indiqué que « Manifest V3 représente l'un des plus grands changements dans la plateforme d'extensions depuis son lancement dix ans auparavant. Les extensions utilisant MV3 bénéficieront d'améliorations en matière de sécurité, de confidentialité et de performances; elles peuvent également utiliser des technologies Open Web plus contemporaines adoptées dans MV3, telles que les Services Workers et les Promises. Les développeurs peuvent mettre à jour leurs extensions dès aujourd'hui pour profiter de ces fonctionnalités MV3; cela deviendra obligatoire au fur et à mesure que nous éliminerons MV2 à l'avenir ».
Les extensions peuvent modifier le comportement de Chrome grâce aux capacités que Manifest v3 expose. Entre autres choses, Manifest v3 limite le nombre de « règles » que les extensions peuvent appliquer à une page Web lors de son chargement. Des règles sont utilisées, par exemple, pour vérifier si un élément de site Web provient du serveur d'un annonceur et doit donc être bloqué. Google a annoncé les changements en 2018.
La réduction du nombre de règles a déclenché la colère d'éditeurs d'extensions comme le bloqueur de publicités uBlock Origin et le bloqueur de suivi Ghostery. Ils ont déclaré que les limites des règles empêcheraient leurs extensions d'exécuter leurs listes complètes d'actions pour filtrer les publicités ou bloquer le suivi. Cela pourrait permettre aux sites Web de contourner les extensions - et les préférences des personnes qui les ont installées.
Google a défendu sa technologie et fait valoir que le fait d'accorder trop de liberté aux extensions invite à l'abus. L'entreprise affirme avoir écouté les développeurs et modifié Manifest v3 en réponse. Par exemple, Google a assoupli la limite de règles initialement proposée et ajouté un nouveau mécanisme pour appliquer certaines règles. Eyeo, le développeur de l'une des extensions Adblock Plus largement utilisées, a déclaré qu'il était satisfait de l'approche Manifest V3 de Google.
Le changement induit par Manifest V3 va s'étendre à tous les navigateurs, au détriment des logiciels de blocage des publicités, a estimé Andrey Meshkov, cofondateur et directeur de la technologie d'AdGuard, une extension de blocage des publicités.
« La principale victime du Manifest V3 est l'innovation », a déclaré Meshkov dans un communiqué. Auparavant, les développeurs de bloqueurs de publicités exploraient des idées telles que l'utilisation de la technologie d'intelligence artificielle (IA) pour améliorer leurs produits. « Ce n'est plus si pertinent. Maintenant, Chrome, Safari et Edge dictent ce qui peut ou ne peut pas être bloqué et comment cela doit être fait ».
Google retarde l'exécution d'extensions Chrome vouées à l'échec avec Manifest V3
Google a retardé la transition de sa plateforme d'extension de navigateur pour les clients d'entreprise, offrant à ceux qui utilisent des versions gérées de Chrome avec les extensions obsolètes Manifest v2 (MV2) six mois supplémentaires de support.
Google a également redéfini ses délais pour les utilisateurs généraux de Chrome afin de faire que la transition vers Manifest V3 représente un moindre choc : en d'autres termes, les développeurs ont besoin de plus de temps pour réécrire leur code d'extension.
Auparavant, à partir de janvier 2023, Chrome devait cesser d'exécuter les extensions MV2. Les installations Chrome gérées par les entreprises ont eu six mois supplémentaires avec MV2, jusqu'en juin 2023.
[QUOTE=David Li, Product Manager at Google]L'année dernière, nous avons annoncé un calendrier pour la suppression progressive des extensions Manifest V2 alors que nous nous concentrons sur Manifest V3. Ce changement offrira aux utilisateurs de Chrome une sécurité et une tranquillité d'esprit accrues lors de la navigation et de l'installation d'extensions en offrant plus de transparence et de contrôle sur les autorisations, en ajoutant des protocoles plus stricts pour accéder aux ressources en dehors du contexte de l'extension et en garantissant que les extensions fonctionnent bien sur tous les appareils.
Chrome adoptera une approche progressive et expérimentale pour désactiver Manifest V2 afin de garantir une expérience utilisateur fluide pendant le processus de suppression. Nous souhaitons nous assurer que les développeurs disposent des informations dont ils ont besoin, avec suffisamment de temps pour passer à la nouvelle version de Manifest et pour déployer les modifications auprès de leurs utilisateurs. À l'appui de cet objectif, nous fournissons plus de détails sur la façon dont Chrome supprimera progressivement la prise en charge de Manifest V2.
Spécifiquement:
- À partir de janvier dans Chrome 112, Chrome peut exécuter des expériences pour désactiver la prise en charge des extensions Manifest V2 dans les canaux Canary, Dev et Beta.
- À partir de juin dans Chrome 115, Chrome peut exécuter des expériences pour désactiver la prise en charge des extensions Manifest V2 dans tous les canaux, y compris le canal stable.
Pour les...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.