Mozilla bindet das Schicksal von Firefox an die Sprache Rust

Mozilla war immer dafür vorgesehen, dass Rust zum Erstellen wichtiger Teile des Firefox-Browsers verwendet wird. Jetzt bekennt sich das Unternehmen in erheblichem Maße zu dieser Vision.

Nach Version 53 muss Rust für Firefox erfolgreich kompiliert werden, da Firefox-Komponenten vorhanden sind, die mit der Sprache erstellt wurden. Diese Entscheidung kann jedoch die Anzahl der Plattformen einschränken, auf die Firefox portiert werden kann - vorerst.

Rust, Mozilla Researchs Sprache für schnelle und sichere Programmierung auf Systemebene, steht kurz vor einer neuen Version. Die bemerkenswerteste neue Funktion von Rust 1.15 ist ein überarbeitetes Build-System, das in Rust geschrieben wurde und das native Cargo-Paketmanagement von Rust verwendet. Zuvor wurde Rust mit Makefiles gebaut; Mit dieser Änderung kann Rust wie jedes andere Rust-Projekt mit Frachtkisten gebaut werden. Dies ist einer von vielen Schritten, die Rust unternommen hat, um sein eigenes Ökosystem zu werden, unabhängig von Teilen, die von anderen gebaut wurden.

Da Rust gereift und stabilisiert ist, ist es für Firefox-Entwickler einfacher geworden, mehr von der kritischen Infrastruktur des Browsers in diese Sprache zu verschieben. Aber es gibt einen Nachteil: Jede Plattform, auf der Sie Firefox erstellen und ausführen möchten, benötigt eine funktionierende Edition des Rust-Compilers.

Rust soll plattformübergreifend sein, daher sollte dies möglich sein. Die praktischen Auswirkungen sind jedoch komplexer. Rust hängt von LLVM ab, das eigene Abhängigkeiten aufweist - und alle müssten auf der Zielplattform unterstützt werden.

Eine Diskussion über den Bugzilla-Tracker für Firefox wirft viele dieser Punkte auf. Andere Bedenken tauchten ebenfalls auf: Was ist mit der ordnungsgemäßen Unterstützung von Linux-Distributionen mit langfristiger Unterstützung, bei denen die in der Distribution verfügbaren Tools häufig eingefroren sind und bei denen neuere Rust-Funktionen möglicherweise nicht verfügbar sind? Was ist mit der Unterstützung von Firefox auf "Nicht-Tier-1" -Plattformen, die einen geringeren Anteil der Firefox-Benutzer ausmachen?

Mozillas Haltung ist, dass sich der Schmerz des Übergangs auf lange Sicht lohnen wird. "Der Vorteil der Verwendung von Rust ist zu groß", so Betreuer Ted Mielczarek. "Normalerweise geben wir uns nicht die Mühe, den Menschen, die Firefox-Ports warten, das Leben zu erschweren, aber in diesem Fall können wir nicht zulassen, dass weniger verwendet wird." Plattformen hindern uns daran, Rust in Firefox zu verwenden “, schrieb er.

Die Plattformen, die laut einer Diskussion im Bugzilla-Thread am wahrscheinlichsten von dieser Entscheidung betroffen sind, sind Nicht-Desktop-Architekturen wie der S390 von IBM. Infolgedessen ist es möglich, dass diejenigen, die Linux-Distributionen für diese Architekturen ausliefern - wie Red Hat es mit Fedora tut - einfach die Firefox-Unterstützung für Builds einstellen, die Rust noch nicht vollständig unterstützen.

Die meisten Firefox-Benutzer sind davon nicht betroffen. Die beste Hoffnung für diejenigen, die es sind, wird darin bestehen, Anstrengungen zu unternehmen, um die Plattformen aufzubauen, die Rust-Unterstützung benötigen, und gleichzeitig die Entwicklung für Firefox und Rust voranzutreiben.

Herkömmliche Firefox-Benutzer interessieren sich jedoch mehr für das Endergebnis - eine versprochene Verjüngung, die den Browser schnell und wettbewerbsfähig hält - und weniger für die Technologie, mit der dies erreicht wird. Der Druck besteht nicht nur darin, nach Rust zu ziehen, sondern auch zu beweisen, dass sich der Umzug gelohnt hat.