Programmering

Mozilla binder Firefox skjebne til Rust-språket

Mozilla var alltid ment for at Rust skulle brukes til å bygge viktige deler av Firefox-nettleseren. Nå forplikter selskapet seg til den visjonen på en betydelig måte.

Etter versjon 53 vil Firefox kreve at Rust kompilerer vellykket på grunn av tilstedeværelsen av Firefox-komponenter bygget med språket. Men denne beslutningen kan begrense antall plattformer som Firefox kan porteres til — for nå.

Rust, Mozilla Researchs språk for rask og sikker programmering på systemnivå, er på tærskelen til en ny utgivelse. Rust 1.15s mest bemerkelsesverdige nye funksjon er et modernisert byggesystem skrevet i Rust og bruker Rusts opprinnelige Cargo-pakkehåndtering. Tidligere ble Rust bygget med makefiler; med denne endringen kan Rust bygges ved hjelp av Cargo "kasser" som alle andre Rust-prosjekter. Det er ett av mange skritt som Rust har tatt for å bli sitt eget økosystem, ikke avhengig av brikker bygget av andre.

Etter hvert som Rust har modnet og stabilisert seg, har det blitt lettere for Firefox-utviklere å flytte mer av nettleserens kritiske infrastruktur til det språket. Men det er en ulempe: Enhver plattform der du har tenkt å bygge og kjøre Firefox, trenger en arbeidsutgave av Rust-kompilatoren.

Rust er ment å være plattform, så dette bør være mulig. Imidlertid er de praktiske implikasjonene mer komplekse. Rust avhenger av LLVM, som har egne avhengigheter - og alle av dem må støttes på målplattformen.

En diskusjon om Bugzilla-trackeren for Firefox reiser mange av disse punktene. Andre bekymringer sprudlet også opp: Hva med riktig støtte for Linux-distribusjoner med langsiktig støtte, der verktøyene som er tilgjengelige på distro ofte blir frosset, og hvor nyere Rust-funksjoner kanskje ikke er tilgjengelige? Hva med støtte for Firefox på "non-tier-1" plattformer, som utgjør en mindre andel av Firefox-brukere?

Mozillas holdning er at på sikt vil smerten ved overgang være verdt det. "Fordelen med å bruke Rust er for stor," ifølge vedlikeholder Ted Mielczarek. "Vi pleier vanligvis ikke å gjøre livet vanskeligere for folk som opprettholder Firefox-porter, men i dette tilfellet kan vi ikke la mindre brukte plattformer begrenser oss fra å bruke Rust i Firefox, ”skrev han.

Plattformene som mest sannsynlig vil bli berørt av denne avgjørelsen, ifølge en diskusjon i Bugzilla-tråden, er ikke-skrivebordsarkitekturer som IBMs S390. Som et resultat er det mulig at de som sender Linux-distribusjoner for disse arkitekturene - som Red Hat gjør med Fedora - bare vil slippe Firefox-støtte for byggene som ennå ikke fullt ut støtter Rust.

De fleste Firefox-brukere blir ikke berørt av dette. Det beste håpet for de som er, vil være å gjøre en innsats for å bygge ut plattformene som trenger ruststøtte - samtidig som det driver utviklingen for både Firefox og Rust.

Konvensjonelle Firefox-brukere bryr seg imidlertid mer om sluttresultatet - en lovet foryngelse som vil holde nettleseren rask og konkurransedyktig med funksjoner - og mindre om teknologien som brukes til å oppnå det. Presset er ikke bare for å flytte til Rust, men for å bevise at flyttingen var verdt det.

$config[zx-auto] not found$config[zx-overlay] not found