• [^] # Re: Fin 2015.

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Servo fin 2015 : où en est-on ?. Évalué à 10.

    Officiellement oui, Servo n'est qu'un truc expérimental. Et de toute façon, il n'est pas encore prêt.

    Mais.

    Vu l'état d'avancement, on peut dire qu'il a dépassé le stade de prototype. Le moteur en lui même fonctionne. Au niveau architecture, je pense que ça se stabilise. Il y a encore certainement du travail à faire au niveau optimisation. Mais ce qu'il reste surtout à faire (si j'ai bien suivi) c'est implémenter des API, des propriétés CSS, HTML et j'en passe pour avoir un moteur de rendu qui soit utilisable.

    Il est donc probable que d'ici un an on ait une première version que l'on peut tester en réél (dans un navigateur à l'interface minimaliste).

    Cependant un navigateur, ce n'est pas qu'un moteur de rendu : gestion des bookmarks, des mots de passe, des préférences, de l'impression, des addons, en plus d'outils de dev web, du mode private, du mode offline, et plein d'autres choses etc... Donc une fois Servo terminé, il restera du boulot.

    Pour Mozilla donc, la question se pose déjà. Est ce que Firefox un jour switchera vers Servo ? pour l'instant très difficile à dire, et si j'en crois les mailing-list, Mozilla ne le sait pas lui-même. Une chose est sûre, ils veulent se débarrasser de XUL, XBL, XPCOM et autres trucs (qui ne seront pas implémentés dans Servo, c'est certain). Pour ça il faut se débarrasser du système d'extension XUL (c'est en cours), il faut migrer l'interface XUL vers du HTML ou du natif (et redevelopper plein de composants interne qui sont en XPCOM). La migration de l'interface est en discussion. Certains proposent plutôt de laisser continuer Firefox comme cela, tout en le faisant évoluer de manière à ce que la transition vers un "Firefox nouvelle génération" soit douce (en clair, il faut que les extensions soient prêtes, d'où les webextensions qui arrivent dans Firefox, qui proposeront une API qui s'abstrait totalement de l'API interne du navigateur, donc de Gecko). D'autres proposent de faire le ménage au fur et à mesure et redévelopper ce qu'il y a à redevelopper pour que ce soit compatible Gecko & Servo (cela veut donc dire migrer petit à petit des bouts d'interfaces de XUL vers HTML, de redévelopper des composants XPCOM en module javascript quand c'est pertinent etc..).

    Une chose est sûre : cela va prendre beaucoup de temps, quelque soit la solution.

    Maintenant il n'y a pas que Firefox Desktop. Il y a aussi Firefox pour Android, et Firefox OS. Ces deux produits n'utilisent pas XUL et autres trucs "deprecated" (l'interface pour FxAndroid utilise la techno d'android, et pour FxOS, tout est en HTML). Il est donc fort possible que ces deux logiciels remplaceront Gecko par Servo quand ce dernier sera suffisamment mature. Même si ça ne se fera pas en 5 minutes, il y a à priori moins de boulot à l'heure actuelle que pour Firefox Desktop (d'ailleurs on remarquera le port de Servo vers Gonk, le système linux de FirefoxOS : c'est une première étape franchie ;-) ).

    Comme autre produit phare, reste Thunderbird. Là tout est en XUL, avec beaucoup de composants XPCOM en C++ (implémentation des protocoles de messageries...). Forcément, l'avenir de Thunderbird est lié à l'avenir de Gecko. Les devs de Thunderbird étudient donc la possibilité de refaire un Thunderbird tout en HTML pour l'interface, et même de redévelopper les différents protocoles en JS. (Qui c'est, verra-t-on Thunderbird sur FirefoxOS ? ;-)

    En conclusion : Servo est encore expérimental (dans les faits et officiellement), mais je pense que ça deviendra à terme une vrai brique utilisable en "production". Même si Mozilla décide un jour d'abandonner Servo (ce dont je doute), vu le nombre grandissant de contributeurs externes, c'est un truc qui finira en prod de toute façon. Chez Samsung ou ailleurs.