En 2016, Firefox pourrait accueillir du code Rust et des composants de Servo,
Le moteur de rendu web sécurisé de Mozilla
Le 2015-12-09 15:33:12, par Michael Guilloux, Chroniqueur Actualités
Mise à jour le 17/03/2016 - Servo : Mozilla envisage de livrer une première version de son moteur de rendu web nouvelle génération en juin avec son navigateur expérimental Browser.html
Comme annoncé en décembre dernier lors de son évènement Mozlando dédié aux développeurs, Mozilla va livrer une première version de son moteur de rendu web nouvelle génération baptisé Servo. Écrit en Rust, le langage de programmation de Mozilla, Servo promet d’éliminer des failles de sécurité et bogues rencontrés avec Gecko, l’actuel moteur de rendu développé en C++ et qui alimente divers produits de Mozilla dont Firefox.
Mais plutôt que des composants de Servo soient livrés dans Firefox, Mozilla envisage de publier, en juin, une première version de son moteur de rendu web à tester avec Browser.html. Browser.html est un projet de recherche de Mozilla visant à construire un navigateur expérimental en HTML qui pourra tirer pleinement parti des avantages de Servo. Browser.html est composé d’un runtime pour la construction d’applications natives en HTML et d’une interface utilisateur de navigateur expérimentale pour le bureau.
La paire Browser.html + Servo pourrait donc coexister avec Mozilla Firefox à moyen terme et peut-être devenir le navigateur phare de Mozilla à long terme.
Source : Google Groups
Comme annoncé en décembre dernier lors de son évènement Mozlando dédié aux développeurs, Mozilla va livrer une première version de son moteur de rendu web nouvelle génération baptisé Servo. Écrit en Rust, le langage de programmation de Mozilla, Servo promet d’éliminer des failles de sécurité et bogues rencontrés avec Gecko, l’actuel moteur de rendu développé en C++ et qui alimente divers produits de Mozilla dont Firefox.
Mais plutôt que des composants de Servo soient livrés dans Firefox, Mozilla envisage de publier, en juin, une première version de son moteur de rendu web à tester avec Browser.html. Browser.html est un projet de recherche de Mozilla visant à construire un navigateur expérimental en HTML qui pourra tirer pleinement parti des avantages de Servo. Browser.html est composé d’un runtime pour la construction d’applications natives en HTML et d’une interface utilisateur de navigateur expérimentale pour le bureau.
La paire Browser.html + Servo pourrait donc coexister avec Mozilla Firefox à moyen terme et peut-être devenir le navigateur phare de Mozilla à long terme.
Source : Google Groups
Pour rappel, Servo est développé en Rust. Ce qui permet d’éliminer des failles de sécurité et bogues rencontrés avec Gecko, l’actuel moteur de rendu développé en C++ et qui alimente divers produits de Mozilla, tels que Netscape Navigator, Firefox, Thunderbird, AOL Explorer ou Camino. Servo est également axé sur la mobilité, le parallélisme et une exécution sur des processeurs multicœurs. Ces caractéristiques font de Servo un moteur de rendu web quelque peu différent des moteurs actuels, surtout en ce qui concerne sa capacité à tirer pleinement parti des processeurs multicœurs, là où les moteurs actuels ont des limites.
Lorsqu’il était annoncé, Servo était présenté juste comme un moteur de rendu web expérimental, sans aucune certitude de remplacer Gecko dans un avenir proche dans les produits de Mozilla. Mais Rust a depuis lors beaucoup évolué, Servo aussi et Mozilla a déjà commencé à préparer la transition de Firefox vers son futur moteur de rendu web. Il faut en effet rappeler que Mozilla a récemment entrepris et annoncé des changements dans Firefox. En août dernier, la fondation a par exemple annoncé qu’elle va retirer complètement le support des extensions existantes basées sur XUL (XML-based User interface Language), son langage de description d’interfaces graphiques fondé sur XML. Il se trouve en effet que XUL n’est pas du tout compatible avec Servo. Ce qui implique que la transition vers le nouveau moteur de rendu web de Firefox devrait donc se faire au prix de l’abandon de la technologie de GUI. Il faut encore noter que les thèmes complets de Firefox reposent également sur XUL. Cela a probablement contribué à la récente annonce de Mozilla pour leur suppression, sinon un changement de la manière dont ils sont implémentés en vue de se conformer l’évolution du navigateur.
Outre les composants de Servo, la page Twitter du langage de programmation de Mozilla annonce encore que Firefox devrait aussi embarquer du code Rust l'année prochaine. Cela devrait faciliter l'intégration du nouveau moteur de rendu web, étant donné qu'il est écrit dans le langage Rust. Les développeurs pourraient par exemple s'attendre à des bibliothèques Rust utilisées par Servo.
Source : Annonce Twitter
Et vous ?
Voir aussi
-
mothsARTMembre régulier
Envoyé par Zefling
Bref, la comparaison est délicate.
Je ne pense pas que Mozilla, avec tout l'investissement mis autours de Rust et de Servo va faire machine arrière.
Néanmoins, la route va être longue pour rattraper le retard même si les bases sont solides.
La nécessité de recréer un moteur de rendu à partir de zéro me semble nécessaire (et si Mozilla n'avait pas fait ce choix, il se condannait à une mort certaine) :
* ça va permettre d'avoir un moteur vraiment indépendant débarassé de tous le deadcode et scories d'une autre époque : tout l'historique lié à Xul et autre technos sont vraiment délicates à supprimer de Gecko.
* On va se concentrer sur l'essentiel : parallélisation et découpage en composants isolés.
Là ou, me semble-t-il Gecko mais aussi Webkit et par extension Blink sont monolitiques et donc par définition difficile à maintenir, Servo va permettre d’orchestrer des tâches bien distinctes : parseurs html, décodeurs d'images, de font etc.
Je pense que l'intégration dans Firefox va se faire dans ce principe : dès que l'on considère un module parfaitement opérationnel et à même de remplacer son pendant Gecko, on y fait appel.
Une fois que tout les accès à Gecko seront coupés, on pourra définitivement s'en débarasser.
Ce qui me chagrine c'est que ça va faire exploser l'archive tout ça (Gecko + Servo) pendant un moment, que Thunderbird va sans doute disparaitre et qu'il va falloir être encore plus patient pour avoir des killer extensions sans l'utilisation de Xul.le 10/12/2015 à 20:40 -
ZeflingExpert confirméLa dernière fois que j'ai testé Servo, c'était à peine capable d'affiche du CSS2... Quand on voit ce qui est demandé aujourd'hui, j'espère que ça va pas faire comme Opera.le 10/12/2015 à 0:11
-
ZeflingExpert confirméJe réponds avec des mois de retard
Pour la comparaison avec Opera, ce n'était pas sur le moteur, mais en terme de fonctionnalité du navigateur, qui avec la transition Presto → Blink, à perdu tout ce qui faisait son intérêt : personnalisation, extension, outils, etc.
Après, j'avoue ne pas trop savoir où en est Browser.html. (Le gif de l'accueil est sympa, mais ne me rassure pas de masse.)le 17/03/2016 à 23:52 -
UtherExpert éminent séniorQu’en pensez-vous ? Allez-vous tester le nouveau moteur de rendu web de Mozilla ?le 04/07/2016 à 17:37
-
ZeflingExpert confirméGenre mettre un numéro de version genre « 0.0.1 alpha 1 » ?le 04/07/2016 à 19:47
-
ALTMembre émériteJadis, Microsoft était très doué pour ce genre de pratiques. Sauf que eux, ils vendaient (cher, bien sûr) le produit comme une version gamma (donc, en principe, déboguée) !
Dans le logiciel libre, c'est une tradition de sortir un produit en alpha ou bêta : le noyau Linux, Scribus, GIMP, MakeHuman... Combien ont été diffusés en version 0.4, par exemple ? Et combien sont actuellement diffusés en alpha ou bêta (les distributions ont, toutes, les trois branches : en développement, en débogage ou stable) ?
Donc, pour moi il n'y a rien de choquant que Mozilla fasse de même.le 20/04/2017 à 11:36