[Brève] La beta 2 de Firefox 4 rend beaucoup d’extensions incompatibles


La version beta 2 de Firefox 4.0 pointent le bout de sa barre d’adresse. Même si elle n’est pas encore disponible sur les serveurs de Mozilla (ce qui devrait changer dans les heures qui viennent), cette nouvelle version apporte comme d’habitude pas mal de changements.

Notamment au niveau de l’architecture interne des composants XPCOM. Le nouveau moteur Gecko 2.0 permettra des suppressions, activations et désactivations des extensions sans redémarrer le navigateur. Ce n’est pas encore le cas pour les installations, mais on s’en approche. Explications.

Avant Gecko 2.0, durant l’inscription d’un composant, tous les fichiers Javascripts et les binaires étaient chargés et appelés, leur demandant de s’auto-enregistrer.
Désormais, il faudra utiliser des fichiers manifest pour les déclarer.

Exemple de fichier chrome.manifest:

# The {classID} here must match the classID in mycomponent.js
component {e6b866e3-41b2-4f05-a4d2-3d4bde0f7ef8} components/mycomponent.js
contract @foobar/mycomponent;1 {e6b866e3-41b2-4f05-a4d2-3d4bde0f7ef8}
category profile-after-change MyComponent @foobar/mycomponent;1

Plus d’info sur le site de Mozilla.

D’autres parts, ce changement devrait permettre à termes une approche multithreadée par le navigateur e, permettant un chargement des extensions par thread.

Si c’est une bonne nouvelle, elle l’est moins pour les extensions car la plupart d’entre elles ne seront plus compatibles avec cette version Beta 2 et les suivantes sans changement.

Contourner le problème est très facile et prend peu de temps à implémenter. Nous voila rassuré.
Mais le problème demeure pour les extensions dont le développement a été abandonné et qui sont pourtant très pratiques.

Comment va réagir la communauté ? Va-t-elle se mobiliser pour mettre à jour toutes les extensions existantes ?

Téléchargez Firefox 4.0 Beta 2