Firefox 48 : le navigateur va embarquer ses premiers composants en Rust
Le langage de programmation de Mozilla maintenant disponible en version 1.10

Le , par Michael Guilloux, Chroniqueur Actualités
Lancé en tant que projet de recherche par Mozilla Research, il y a presque sept ans, le langage de programmation Rust est maintenant disponible en version 1.10. Entre autres objectifs, Rust veut surtout offrir « une alternative sûre à C++ pour permettre aux programmeurs de systèmes d’être plus productifs », mais également pour permettre « aux logiciels critiques d’être moins sujets aux exploits de mémoire ». Rust est en effet un langage de programmation de systèmes axé sur la sécurité, la rapidité et la concurrence. C’est le langage utilisé pour écrire le moteur de rendu web sécurisé de Mozilla, baptisé Servo, qui pourrait à la longue remplacer l’actuel moteur de rendu web Gecko, écrit en C++.

Disponible depuis quelques jours, Rust 1.10 introduit plusieurs améliorations. Près de 70 API ont été rendues stables dans cette version et les performances du compilateur ont été améliorées. Cargo, le gestionnaire de paquets de Rust, a également vu quelques-unes de ses fonctionnalités améliorées.

À côté de la sortie d’une nouvelle version du langage de programmation de Mozilla, Dave Herman, cofondateur de Mozilla Research a annoncé la livraison de Rust dans Firefox, à partir de la prochaine version, Firefox 48. Pour être plus clair, le navigateur de Mozilla va bientôt embarquer ses premiers composants écrits en Rust. Ceci est donc une étape importante vers la réécriture progressive des composants de Firefox avec le langage de programmation de Mozilla.

Pour cette première étape, c’est la pile média de Firefox qui va bénéficier d’une touche de Rust. « L'un des premiers groupes chez Mozilla à faire usage de Rust est l'équipe Media Playback », a annoncé Dave Herman dans un billet de blog.

Les médias sont aujourd’hui au cœur de l'expérience web moderne. Mais comme l’explique monsieur Dave, « chaque fois qu'un navigateur joue une vidéo apparemment inoffensive, il lit des données livrées dans un format complexe et créées par quelqu'un que vous ne connaissez pas et à qui vous ne faites pas confiance. Et il se trouve que les formats de médias sont connus pour avoir été utilisés pour tromper les décodeurs en exposant les failles de sécurité qui exploitent des bogues de gestion de mémoire dans le code d'implémentation des navigateurs web ».

Rust ayant été conçu pour réduire les vulnérabilités de mémoire, Dave Herman estime qu’un tel langage est plus qu’un simple bonus pour les outils de Mozilla pour la protection contre les contenus médias potentiellement malveillants sur le web. Mozilla a donc développé un analyseur de média en Rust qui sera livré dans la prochaine version de Firefox. Il s’agit donc du premier composant Rust qui sera intégré dans le navigateur de Mozilla. Le cofondateur de Mozilla Research explique également que les premiers tests ont montré que le composant Rust s’exécute parfaitement et produit des résultats identiques à ceux du composant original écrit en C++ qu’il remplace. Le plus apporté par le composant Rust est qu’il est écrit dans un langage de programmation plus sécurisé, conçu pour réduire les bogues de gestion de mémoire.

Ce premier composant de Firefox écrit en Rust sera livré à tous les utilisateurs des versions de bureau du navigateur de Mozilla. Le support pour Android va également suivre. Cette annonce vient concrétiser la promesse de Mozilla faite en décembre dernier à sa conférence Mozlando. Il faut également dire qu’une préversion de Servo, le moteur de rendu web écrit en Rust, a aussi été livrée il y a presque deux semaines.

L’arrivée de Rust dans Firefox 48 annonce également que la prochaine version de Firefox sera très prometteuse. Il faut en effet rappeler que Firefox 48 va introduire la technologie tant attendue Electrolysis (E10S). Cette technologie repose sur le même principe que l'électrolyse dans le domaine de la chimie qui permet de dissocier de l'eau en hydrogène et oxygène. Cela permettra en effet de scinder Firefox en processus UI et processus de contenu. À propos d’E10S, Asa Dotzler, coordinateur pour plusieurs projets de Mozilla, estime qu’il s’agira du plus grand changement jamais effectué dans Firefox.

Installer Rust 1.10

Sources : Sortie de Rust 1.10, Dave Herman

Et vous ?

Que pensez-vous des composants Rust dans Firefox et de la prochaine version du navigateur ?

Voir aussi :

Servo, le moteur de rendu web de Mozilla écrit en Rust, est disponible en préversions Nightly pour les systèmes Mac OS X et Linux
Firefox 47 apporte un meilleur support de la vidéo HTML5, et Firefox 48 promet plus de performance et de sécurité


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Uther Uther - Expert éminent https://www.developpez.com
le 13/07/2016 à 9:51
C'est intéressant de voir Rust être utilisé par Mozilla dans de grands projets a destination directe de l'utilisateur final et plus seulement dans des projets de recherche.
Pour moi Rust est vraiment un langage intéressant qui a tout pour réussir dans le domaine ou le C++ règne actuellement. Il apporte indiscutablement plus de sécurité et aussi de la simplicité sur pas mal de points, sans faire de concessions au niveau des performances.

Ce qu'il lui manque vraiment, c'est une de la reconnaissance. Et son l'utilisation dans Firefox, même si elle est anecdotique pour le moment, peut vraiment y contribuer.
Avatar de imperio imperio - Membre chevronné https://www.developpez.com
le 13/07/2016 à 23:01
Ce qu'il lui manque vraiment, c'est une de la reconnaissance. Et son l'utilisation dans Firefox, même si elle est anecdotique pour le moment, peut vraiment y contribuer.

C'est tout ce qu'on lui souhaite.
Offres d'emploi IT
Développeur Web FULL-STACK
VACALIANS GROUP - Languedoc Roussillon - SETE (34)
Développeur WEB PHP F/H
VACALIANS GROUP - Languedoc Roussillon - SETE (34)
RESPONSABLE WEB ANALYTICS F/H
VACALIANS GROUP - Languedoc Roussillon - SETE (34)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil