Mozilla annonce une série de changements sur la gestion des extensions sur son navigateur
L'une d'elles prendra effet à partir de Firefox 41
Le 2015-08-24 09:46:27, par Stéphane le calme, Chroniqueur Actualités
Mozilla a annoncé des changements majeurs à venir sur la façon dont les extensions Firefox seront conçues et gérées. Bien que l’annonce soit principalement destinée aux développeurs d’extensions, les résultats finaux auront des retombées sur les utilisateurs de Firefox. Kev Needham, un ingénieur Mozilla, reconnaît que, même si l’écosystème des extensions de Firefox a évolué au fil des années, « il y a quelques modernisations à apporter à Firefox qui requièrent quelques changements fondamentaux » afin de profiter des technologies comme Electrolysis et Servo, de protéger les utilisateurs des spyware et adware et enfin de réduire le temps qu’il faut pour examiner une extension.
Afin d’aider sa communauté de développeurs d’extension à comprendre comment Mozilla va réaliser ces améliorations, la Fondation a fait ces quatre annonces connexes :
Seule la première de ces annonces s’avère totalement nouvelle puisque Mozilla avait déjà évoqué les trois autres depuis un certain temps maintenant. Le mois dernier, la Fondation l’avait fait lorsqu’elle annonçait ses plans pour Firefox. Même si, cette fois-ci, les annonces sont plus généreuses en détails.
Si la Fondation estime que ces changements auront des retombées positives comme une plus grande compatibilité des extensions inter-navigateurs, elle reconnaît néanmoins qu’ils pourraient nécessiter de revoir un certain nombre d’extensions existantes. Quoi qu’il en soit, pour réaliser au plus vite ces améliorations, elle a décidé d’agrandir ses équipes d’ingénieurs, d’examinateurs d’extensions, d’évangélistes qui travaillent sur les extensions afin que tous puissent travailler de concert avec la communauté dans le but d’améliorer et de finaliser l’API WebExtensions mais aussi aider les développeurs avec des extensions non supportées à faire la transition vers la nouvelle API et le support du multiprocessus.
À ceux qui se posent des questions sur ce qu’est l’API WebExtensions ou ce qui a motivé cette initiative, Mozilla explique que « cela fait un moment déjà que les développeurs nous ont fait savoir que nos API pourraient être mieux documentées et plus faciles à utiliser. De plus, nous avons remarqué que plusieurs développeurs d’extension sur Firefox maintiennent également la même extension sur Chrome, Safari ou Opera avec les mêmes fonctionnalités ». Les développeurs ont émis le souhait de voir le développement d’extension ressembler beaucoup plus au développement web : le même code devrait marcher sur de multiples navigateurs selon des comportements définis par des standards avec une documentation compréhensive disponible chez de multiples vendeurs.
« Raison pour laquelle nous implémentons une nouvelle API dans Firefox compatible avec Blink que nous avons appelé WebExtensions » a précisé Needham. Les extensions écrites pour Chrome, Opera ou, probablement dans le futur, Microsoft Edge, vont fonctionner sur Firefox avec peu de changement en tant que WebExtension. « Cette API moderne et centrée sur JavaScript a de nombreux avantages parmi lesquels le support des navigateurs multiprocessus par défaut » a-t-il expliqué.
Source : blog Mozilla
forum Firefox
Afin d’aider sa communauté de développeurs d’extension à comprendre comment Mozilla va réaliser ces améliorations, la Fondation a fait ces quatre annonces connexes :
- Mozilla implémente une nouvelle API d’extension, appelée WebExtensions (qui s’avère largement compatible au modèle utilisé par Chrome et Opera) afin de faciliter le développement d’extensions sur plusieurs navigateurs.
- Mozilla veut s’assurer que les extensions Firefox soient compatibles avec la venue d’Electrolysis sur son navigateur qui devrait permettre d’avoir une version de Firefox « plus sûre, plus rapide et multiprocessus ».
- Pour s’assurer que les extensions tierces ne fournissent pas la personnalisation au détriment de la sécurité, de la performance ou de l’exposition des utilisateurs à des logiciels malveillants, Mozilla va exiger que toutes les extensions soient validées et signées par Mozilla à compter de Firefox 41 qui sera publié le 22 septembre 2015.
- Mozilla a défini un calendrier approximatif pour la dépréciation des extensions basées sur XPCOM (et XUL).
Seule la première de ces annonces s’avère totalement nouvelle puisque Mozilla avait déjà évoqué les trois autres depuis un certain temps maintenant. Le mois dernier, la Fondation l’avait fait lorsqu’elle annonçait ses plans pour Firefox. Même si, cette fois-ci, les annonces sont plus généreuses en détails.
Si la Fondation estime que ces changements auront des retombées positives comme une plus grande compatibilité des extensions inter-navigateurs, elle reconnaît néanmoins qu’ils pourraient nécessiter de revoir un certain nombre d’extensions existantes. Quoi qu’il en soit, pour réaliser au plus vite ces améliorations, elle a décidé d’agrandir ses équipes d’ingénieurs, d’examinateurs d’extensions, d’évangélistes qui travaillent sur les extensions afin que tous puissent travailler de concert avec la communauté dans le but d’améliorer et de finaliser l’API WebExtensions mais aussi aider les développeurs avec des extensions non supportées à faire la transition vers la nouvelle API et le support du multiprocessus.
À ceux qui se posent des questions sur ce qu’est l’API WebExtensions ou ce qui a motivé cette initiative, Mozilla explique que « cela fait un moment déjà que les développeurs nous ont fait savoir que nos API pourraient être mieux documentées et plus faciles à utiliser. De plus, nous avons remarqué que plusieurs développeurs d’extension sur Firefox maintiennent également la même extension sur Chrome, Safari ou Opera avec les mêmes fonctionnalités ». Les développeurs ont émis le souhait de voir le développement d’extension ressembler beaucoup plus au développement web : le même code devrait marcher sur de multiples navigateurs selon des comportements définis par des standards avec une documentation compréhensive disponible chez de multiples vendeurs.
« Raison pour laquelle nous implémentons une nouvelle API dans Firefox compatible avec Blink que nous avons appelé WebExtensions » a précisé Needham. Les extensions écrites pour Chrome, Opera ou, probablement dans le futur, Microsoft Edge, vont fonctionner sur Firefox avec peu de changement en tant que WebExtension. « Cette API moderne et centrée sur JavaScript a de nombreux avantages parmi lesquels le support des navigateurs multiprocessus par défaut » a-t-il expliqué.
Source : blog Mozilla
-
UtherExpert éminent séniorFranchement par rapport à la moyenne des actualités du site, je trouve celle ci plutôt correcte.
Mozilla a annoncé que l'API WebExtension vise a pouvoir faire fonctionner les extensions de Chrome, mais elle devrait également fournir des fonctionnalités en plus. Ils ont annoncé qu'elle permettra au moins de pouvoir désactiver les scripts et pouvoir personnaliser l'interface. Ils ont mis en place un site pour discuter des fonctionnalités souhaitées dans l'API. Je suis aussi inquiet du risque que certaines extensions ne sont plus réalisables, mais tant qu'on ne sait pas ce qui sera disponible dans la WebExtension API, c'est un peu tôt pour dire ce qui sera réalisable ou non.
Il faut voir que pour moi, mettre en place une API d'extension était plus que nécessaire. Les équipes de Mozilla passaient autant de temps à essayer de faire évoluer leur produit que s'assurer que les addon ne cassent pas tout. Avec une API bien définie, les addon devraient être bien plus stable.le 24/08/2015 à 12:13 -
UtherExpert éminent séniorLe projet Quantum Flow qui apporte le plus gros des améliorations de performance est justement arrivé dans la version 57. Donc il y a bien Electrolysis qui est arrivé avec la 55, mais on y gagnerait pas tant que ça.
Si le support de la version ESR actuelle se terminait bientôt, ils l'auraient sans doute envisagé ou repoussé la désactivation des anciennes extension à après la sortie de la nouvelle ESR. Mais l'ESR actuelle est encore supporté pendant 8 mois : ils ont probablement estimé que ça ne valait pas la peine de chambouler l'organisation pour juste 4 mois de gagnés.
Sauf que Mozilla s'engage a maintenir toutes les versions ESR. S'il décident de rajouter une ESR, ça oblige a revoir une partie de leur organisation, mais surtout ça les oblige à maintenir une nouvelle version ESR en plus, ce qui a un coût.
Donc ils ne vont pas le faire a moins qu'il y ait une grosse demande sur le sujet, ce qui n'est visiblement pas le cas. On voit certes beaucoup de personnes se plaindre mais en général c'est surtout pour dire : "Rendez nous les addons XUL et abandonnez les webextensions", et là pour le coup c'est non négociable.
Tu peux toujours réclamer sur le support de Mozilla, mais à mon avis c'est trop tard vu que la version 56 ne sera plus supportée dans quatre jours. Et tu as intérêt d'avoir une masse de monde pour te soutenir, parce qu'il ne vont pas changer tout leur calendrier et leur plan de charge pour la demande d'une seule personne.le 10/11/2017 à 9:40 -
arnoflyMembre confirméOui aussi.
On est bien d'accord que ça n'est pas mon cas. Je le précise parce qu'il y en a qui on un peu de mal. A prime abord ça fait chier, mais cherchant un peu à comprendre pourquoi, je pense que c'est une des meilleures décisions qui a été prises ces derniers temps. C'est juste que la mise en application à travers les versions de FF est foireuse et je trouve ça regrettable. Honnêtement, c'était prévisible que les développeurs d'extensions allez s'y prendre à la dernière minute pour migrer. En fait, il fallait prévoir un FF 56 ESR non planifié et le sortir du chapeau maintenant, un FF 56 SESRFAU : Secret Extended Support Release For Angry Users
C'est que depuis les récentes publications sur Electrolysis que je me tiens informé de prêt de l'actu de FF, mais en tant qu'utilisateur, si je compare FF à une voiture et les ESR à un appareil photo -oui c'est un peu tordu-, et bien je me dis que chez Mozilla il ont prit en photo leur voiture rouge sur le ponts élévateurs avec un mécano la tête dans le moteur (v52 ESR), puis la prochaine photo sera celle de leur voiture repeinte en jaune avec un nouveau moteur (v59 ESR), mais que personne n'a pensé à prendre en photo la belle voiture rouge toute polishée avec l'ancien moteur qui n'avait jamais aussi bien fonctionné, que je vois comme une v56 ESR qui ne sortira donc jamais.
Pour conclure, merci Uther pour tes éclaircissements. Je viens d'envoyer un mail à l'équipe de dev de FF, je verrais quel sera le retour. Si je ne trouve pas mon bonheur avec le "nouveau" catalogue d'extensions et bien libre à moi de tenter l'expérience d'en développer moi même. La motivation est assez présente depuis un p'tit moment. En fait le plus gros frein, c'est le temps que ça prend qui s'ajoute au fait que je ne suis pas fan de JavaScript que j'utilise presque exclusivement avec jQuery.le 10/11/2017 à 12:57 -
AoCannailleExpert confirméTout le travail ici est bénévole, si un sujet t’intéresse et qu'il n'a pas été traité, je t'en pris, fait le. Lors de la prochaine actu, n'hésite pas à proposer une news, plus vite, plus complète et plus réalistele 24/08/2015 à 15:31
-
UtherExpert éminent séniorJe l'utilise sur un hybride tablette PC Transformer 102HA avec un processeur Atom et je peux te garantir que sur cette machine la différence est colossale, j'avais des freeze complet de l'interface de parfois plusieurs secondes sur les versions pré 57, alors que maintenant tout est parfait.
Et même quand je l'utilise sur des ordinateurs plus puissant, même si les versions précédentes étaient tout à fait utilisables, le gain général ressenti en fluidité est vraiment agréable.
Pas très cohérent comme raisonnement : Mozilla ne fait pas assez évoluer Firefox, tu n'es pas content, il le fait évoluer, tu n'es pas content non plus.
Sauf que tu ne t'en es peut être pas aperçu, parce que Electrolysis a pris des années à se mettre en place mais il a bel et bien cassé lui aussi 90% des extensions, et il a été un cauchemar à mettre en œuvre pour Mozilla justement à cause de ça. C'est justement ce qui les a convaincu qu'il fallait en finir avec les extensions sans API définie.
Le problème des extensions XUL, c'est que comme elles ne s'appuient sur aucune API, tout changement interne peut potentiellement les casser. Et comme Mozilla a l'intension de faire encore lourdement évoluer Firefox à l'avenir, ils ont fait le choix de tout casser une dernière fois, mais comme le WebExtensions ont une API bien définie, ils pourront garantir qu'elle continueront de fonctionner à l'avenir.
En fait Quantum n'est pas un nouveau moteur, c'est principalement une grosse optimisation de l'existant et l’intégration de petites partie de Servo. Pour le moment ça a techniquement beaucoup moins d'impact sur les extensions que ce qu'ont pu avoir Australis et Electrolysis. Mais Mozilla ne compte pas s’arrêter là a et a prévu de continuer à apporter beaucoup de modification structurelles à Firefox, et c'est pour cela qu'ils ont besoin des WebExtension : pour pouvoir réaliser ces évolutions sans être entravé par les extensions.
Le problème c'est que si on permet tout et n'importe quoi, c'est difficile de garder les mains libres sur les évolutions à venir. Par exemple, si on donne une API qui permet de customiser l'IHM, ça peut compromettre les évolutions que Mozilla souhaite apporter à l'IHM car elles pourraient être en contradiction avec ce que proposent les addons.
Alors vu comme ça c'est vrai que ça parait court, mais ça fait plus d'un an et demi qu'ils ont été prévenus que ça ne servait plus a rien de mettre a jour les extension XUL pour Electrolysis vu que les WebExtension allaient les remplacer, ils n'en ont juste pas tenu compte.
Sauf que cette approche n'existe qu'à titre provisoire parce qu'elle n'est pas tenable indéfiniment. Si on crée un version différente à chaque évolution importante, on se retrouve avec un monstre qui est un cauchemar a maintenir.le 04/11/2017 à 13:20 -
UtherExpert éminent séniorLe communiqué de Mozilla sonne quand même un peu comme de l'auto-congratulation.
Certes le passage aux WebExtensions est nécessaire pour permettre à Firefox d'évoluer significativement, et je ne doute pas qu'ils veuillent aider à la transition. Mais il omet quand même de préciser qu'une bonne partie des extensions, notamment celles qui modifient l'IHM, ne seront tout simplement pas adaptables même avec tout la bonne volonté du monde, car l'API proposée ne le permet pas.
Ca n'a rien de drole : à priori, ça devrait être faisable vu que les WebExtensions sont basés sur les technos web classique.
Ceci dit j’attendrais que WebAssembly soit plus finalisé avant de faire ça.
Pour uBlock Origin, si tu vas dans les versions de développement, tu verras qu'il y a déjà une Release candidate compatible.le 17/08/2017 à 8:57 -
arnoflyMembre confirméOk, tu viens de m'apprendre l'incompatibilité du nouveau moteur avec les anciennes extensions, merci. Ma VM ne me permets pas de profiter des nouvelles perfs, mais je peux m'amuser un installer temporairement la beta de FF en dur pour voir ce que ça donne. Que FF mette au tapis Chrome, je trouve ça jouissif et je serais ravis de voir FF reprendre du poil de la bête dans un futur proche, mais dans tous les cas le timing n'est pas bon, il est m nullissime ! ça va trop vite. Les devs d'extensions ont à peine eu le temps de rendre leur travail compatible avec Electrolysis qu'il doivent tout recommencer from scratch dans un délais très court. Faut pas déconner !
Ce que je vais dire dépasse mes compétences, mais il n'est pas possible d'embarquer les 2 moteurs et de laisser le choix à l'utilisateur entre "performances en se privant de nombreuses extensions" ou "perfs en retrait et catalogue complet d'extensions" ? Electrolysis était bien désactivé par défaut à cause de certaines extensions incompatibles. Cette approche était la bonne à mon avis.
Sinon, quand je lis ta remarque sur les perfs des anciennes versions de FF (tu n'es pas le premier), je me dis qu'on a pas dû utiliser le même navigateur. Faut pas déconner, si les perfs sont catastrophique, c'est pas le navigateur qu'il faut changer, c'est le PC ! Dans ce cas, le navigateur n'est sûrement pas le seul logiciel qui rame. Au lieu de foutre l'argent dans un iPhone ridiculement cher, les gens n'ont qu'a acheter un "vrai" PC au lieu d'acheter un "prix". Et puis y'a aussi le problème de l'utilisateur qui installe whatmille extensions et qui vient pleurer ensuite que son navigateur rame... Faut lancer CCleaner de temps à autres aussi. FF offre la possibilité d'installer pleins d'extensions, c'est une chance. Faut pas lui reprocher ensuite de ramer si la configuration n'est pas en adéquation avec les performances de la machine. Bref, dit autrement, c'est injuste de comparer les perfs d'un FF gavé d'extensions avec un navigateur qui n'en a pas ou qui offre un catalogue beaucoup plus pauvre.le 01/11/2017 à 20:28 -
arnoflyMembre confirméssd, 16go de ram, Ryzen7 1700... c pas un PC, c' un avion de chasse !
N'importe quel logiciel doit être rapide là dessus, même les plus mals optimisés.
Pourquoi garder FF 45 ? Il est vieux. Installe FF 56 ou FF 52 ESR à la place. Je pense opter pour la deuxième solution un peu avant la date fatidique. D'après certains, adblock est très mal optimisé, il parait m que c'est une catastrophe et aujourd'hui il est conseillé de le remplacer par Ublock Origin.Je n'ai pas utilisé CCleaner depuis 2011 quand j'ai acheté un ssd. Je vois pas en quoi mon pc aurait besoin d'un ccleaner, windows boot en 8 secondes, firefox 57 démarre en 1 seconde firefox45 en 4...
Et tu sais, le temps que tu gagnes en chargeant une page super vite, tu le perds à cause du manque d'ergonomie d'un navigateur sans saveur sur lequel tu n'es pas autorisé à faire grand chose. Après, chacun voit midi à sa porte.le 01/11/2017 à 21:19 -
UtherExpert éminent séniorCertes on peut discuter de la vitesse des évolutions, mais ça fait quand même un an et demi que les WebExtensions existent et que Mozilla a prévenu que la mise à jour serait obligatoire. La plupart des développeurs n'ont rien fait jusqu'à quelques semaines de l’échéance. A un moment donné il faut bien agir.
Sauf que l'utilisateur, c'est un peu vague. Bien sur que Mozilla essaie de satisfaire au mieux les utilisateurs, mais tous les utilisateurs n'ont pas les mêmes besoins et c'est impossible de satisfaire tous les utilisateurs en même temps. Il y a des moments où il faut faire des choix.
Les versions ESR sont bien prévues (une par an), mais c'est juste un moyen de donner plus de temps aux entreprises pour s'adapter, pas pour empêcher le changement.le 08/11/2017 à 12:56 -
arnoflyMembre confirméMoi c'est de l'humour, un concept qui t'échappes totalement visiblement.
Ce qui me dérange, c'est ta façon de me faire passer pour un imbécile, alors qui semblera évident à toute personne qui aura lu les 4 pages précédentes que tu n'as rien compris et qu'en plus t'es lourd parce que tu reviens à la charge. Donc moi à ta place j'irais me cacher. Si t'as pas encore 20 ans, c'est pas grave ça va passer avec l'âge, sinon t'es dans la merdele 10/11/2017 à 14:02