Le mois prochain, la version 48 de Firefox sur Windows accueillera du code Rust dans sa pile multimédia. En l'occurrence, un analyseur pour le traitement de vidéos au format conteneur MPEG-4. Ce parser MP4 en Rust avait déjà fait son chemin dans Firefox 45 pour OS X et Linux (64 bits). Avant un prochain support sur Android, la première brique Rust sera ainsi présente sur toutes les versions de Firefox sur l'ordinateur.

Rust est le langage de programmation développé par Mozilla Research et se posant principalement en alternative à C et C++. Sa présence dans Firefox attirera d'autant plus l'attention sur lui et servira en quelque sorte de promotion alors que sa première version date de 2010.

Dropbox a déjà eu recours à Rust pour réécrire plusieurs éléments centraux de son infrastructure backend, et ce à la place du langage Go de Google. Ce choix a notamment été guidé par des abstractions de haut niveau, pas d'erreurs de segmentation et de fuites avec un contrôle sur la consommation mémoire.

Cofondateur de Mozilla Research, Dave Herman se réjouit de l'arrivée de Rust dans Firefox. Il écrit qu'avec l'analyseur MP4 en Rust, des mesures préliminaires montrent que les résultats obtenus sont identiques à ceux avec le parser d'origine en C++ qu'il remplace, mais avec une plus grande sécurité au niveau de la mémoire. Il fait ainsi allusion à des problèmes de dépassement de mémoire pour l'exploitation de vulnérabilités de sécurité.

L'intégration de Rust dans Firefox n'en est qu'à ses débuts et d'autres éléments devraient logiquement suivre. Impossible par ailleurs de ne pas penser au moteur de rendu Servo de nouvelle génération qui est développé… en Rust. Les jours de Gecko dans Firefox sont-ils comptés ?

Rappelons en outre que Firefox 48, dont la sortie est prévue pour le 2 août, marquera les débuts grand public du multi-processus (projet Electrolysis ou e10s) même si cela se fera au compte-gouttes.