Mozilla will ship Rust code and Servo components in Firefox in 2016

Martin Brinkmann
Dec 9, 2015
Firefox
|
14

2016 will be an important year for Mozilla, maker of the Firefox web browser and proponent of an open Web.

The organization announced plans this month to shift Firefox OS development away from smartphones to connected devices, and to drop the email client Thunderbird from its portfolio of applications.

As far as Firefox is concerned, 2016 will be a critical year for the browser. Mozilla plans to launch Electrolysis, the multi-process architecture in 2016 which will likely disrupt Firefox's add-on landscape significantly.

Add-on signing will be enforced in 2016 as well which will impact extensions as well.

Today, Mozilla announced that it would ship Rust code and Servo components in Firefox in 2016.

mozilla firefox servo rust

No timeframe was given in the brief announcement and it is unclear right now when first bits are integrated into the web browser.

Rust is a programming language that Mozilla built that it claims is both fast and safe. According to Mozilla, it would eliminate certain kinds of bugs completely by failing during compile.

Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.

Servo on the other hand is a Parallel Browser Engine Project built using Rust.

Written in Mozilla's new systems programming language, Rust, the Servo project aims to achieve better parallelism, security, modularity, and performance.

Mozilla refers to the move as oxidation and you can check the main tracking bug for that on the Bugzilla website.

The first bits of Rust code to be integrated into the browser appear to be the Rust URL parsing code and Rust parser for getting MP4 file metadata.

It is unclear if those implementations will benefit Firefox users directly, for instance by improving parsing time, or only indirectly, by improving the quality of code.

It is possible that additional bits of code will find their way into the Firefox web browser in 2016.

What is clear however is that 2016 will be a deciding year for Mozilla and the Firefox web browser. It s difficult to predict whether the announced changes will impact the browser's userbase positively or negatively.

While most additions sound good on paper, they will likely render some add-ons incompatible with the new version of the browser and that may in turn convince some users to migrate to another browser.

Now You: What are your expectations for Firefox in 2016?

Summary
Mozilla will ship Rust code and Servo components in Firefox in 2016
Article Name
Mozilla will ship Rust code and Servo components in Firefox in 2016
Description
Mozilla announced that it plans to ship Rust code and Servo components in Firefox in 2016.
Author
Advertisement

Tutorials & Tips


Previous Post: «
Next Post: «

Comments

  1. Vitaliy said on December 11, 2015 at 12:52 am
    Reply

    Who cares about addons and themes when Firefox have stability issues? Memory leakage is something that is passed from a generation to a generation in FF and nothing can be done about it if not a full rebuild from scratch. Rust is something that is created to effectively fight this problem, so I hope it will help them to come back.

  2. Jacob Groß said on December 10, 2015 at 7:12 pm
    Reply

    Servo definitely will bring improvements to rendering, see here: http://www.phoronix.com/scan.php?page=news_item&px=MTgzNDA

  3. Cocacuan said on December 10, 2015 at 4:43 pm
    Reply

    http://forums.mozillazine.org/viewtopic.php?p=14431631#p14431631

    It is always also good to know what Mozilla developers think about the Open Source community!

    Read the Google Groups post too.

  4. Cocacuan said on December 10, 2015 at 12:01 pm
    Reply

    It means that i will dump Firefox and move on to Vivaldi, as Mozilla takes away with Servo the rest of the features i loved or if they keep them, oversimplify them.

    Quite disappointed that Mozilla wants to have their UI today some kind of watermarked/branded/trademarked that it looks and feels on every device the same, which means the user will only have very limited control what they are allowed to be able to change it’s look. That is clearly the wrong way to go, as it is a complete turn around of Mozilla’s old ideals.

    And all for the security that the user has no bad impression when they look at Firefox for example on the computer of another user or that there are no simple users who screw up the UI and afterwards dump it or just attracting simple users in general.

    But instead of making a simple option to reset whole UI customization or make new (simple) users be aware that customization offers for them much unknown possibilities which may enhance their experience, they decided to go the “UI is trademark way”.

    Very much disappointing to see Mozilla becoming another IE or Chrome!

    1. Sam said on April 22, 2016 at 6:19 pm
      Reply

      Servo is a rendering engine, not a UI. It renders html and css, and makes sites and pages look like whatever the author created. I don’t understand how does Servo removes features from Firefox. It could change the developer API for writing add-ons, which I believe is the only thing the article mentioned. It is possible to also deprecate the old add-on API and still support it, and allow add-ons to take advantage of a new API and get performance improvements. Firefox could ultimately remove features you like, but this should have nothing to do with the rendering engine, css and html have standard specifications that the browsers follow so the web looks and works correctly.

  5. Henk van Setten said on December 9, 2015 at 8:54 pm
    Reply

    Expectations? For me, personally? None. It’s a little sad to say, but that’s how it is.

    After the demise of Old Opera 12, Firefox became my default browser and it kept that position for quite a while. Then, over a year ago, I switched to Pale Moon as my default browser. I guess I won’t have to list the reasons. So Firefox slid down to third-choice position, behind SRWare Iron (which I used when I needed a Chrome clone, but without Chrome’s privacy issues).

    And just a week ago, I uninstalled Firefox. Because I realized I’d never used it anymore, not once in many months. Behind Pale Moon, by now Vivaldi has become my second-choice browser. SRWare Iron still lingers on in third place (for those rare occasions when I might need a Chrome browser without Vivaldi’s beta glitches) but I expect I’ll be able to dump that one soon, too.

    And you know what? Very, very, very occasionally I still find myself on some website (amateurish shops, mostly) that will work properly only in Internet Explorer. Really, after all those years, a few such dinosaur sites still do exist! So for them, I’ve kept IE as my very-last-resort choice.

    But Firefox? To me, it’s history now.

    1. DaveyK said on December 10, 2015 at 1:16 pm
      Reply

      Quick tip for you is to install IETab. I too have odd sites like that, and it’s great just to be able to click an icon on the status bar (that thing which Firefox dropped) and have the page re-render with IE’s engine. Means no hassle with having to fire up IE for troublesome sites :-)

      1. Henk van Setten said on December 10, 2015 at 2:02 pm
        Reply

        Thanks for the tip. Right now I use OpenWith which puts an option list in the page right-click menu to reload the page in any other installed browser. But IETab may work even quicker, I’ll give it a try!

  6. Ñ said on December 9, 2015 at 8:13 pm
    Reply

    Sadly firefox is already Rusted :( and it would be worst when they drop xul

  7. John Toma Nocu said on December 9, 2015 at 8:07 pm
    Reply

    Is Rust as secure as their automatic add-on checker? Because that really proved to be so a couple of weeks ago.

    There already is a reliable, trustworthy programming language available called C++. Lots of solid software rely on it without issues, such as Chrome, that Mozilla loves so much.

    If you need to keep changing the tools because they seem inefficient to get the job done, then it says a lot about Mozilla’s dev team. Spending countless resources on Rust will make no difference. The core issue with Mozilla’s is their lack of touch with reality, and Rust will account to nothing to address this situation. Quite the opposite, in fact, as they have managed to annoy a lot of add-on developers this year, you know, the ones that make the stuff that most people (used to) look for in Firefox.

    1. abcde123 said on August 20, 2016 at 2:10 pm
      Reply

      > There already is a reliable, trustworthy programming language available called C++.

      That ignorance…

    2. Sam said on April 22, 2016 at 6:08 pm
      Reply

      C++ has lots of power and flexibility, but also allows developers to shoot themselves in the foot. You can do whatever you want with memory making it very easier to introduce bugs, memory leaks, and invalid memory access which when significant can create security issues. The TL;DR is C++ makes it very easy to write complex code, and complex code is hard to understand, reason about, modify, and make performant. This is critical as software is built by teams, where no individual knows the entire codebase and understands every moving part in the system.

      In Rust the developer still has power and flexibility, but encourages safer memory handling through built language constructs by defaulting to a memory sharing model that is much more friendly and easier to reason about, which also reduces the complexity in creating concurrent and parallel code. The last part, reducing complexities for writing concurrent code is extremely important as this type of code is extremely challenging to write. For a demo on the performance gains by the servo engine (written in Rust) currently in development, check out the video at https://air.mozilla.org/bay-area-rust-meetup-february-2016/, skip to around 27 minutes. Some of those benchmarks being shown would make the current Firefox and Chrome fall over and die. The work being done by Mozilla and the Open Source community on the servo engine is very promising and pushing the web forward.

    3. Andy said on December 10, 2015 at 5:55 am
      Reply

      I suspect that, in order to provide an adequate response to you about why Rust instead of C++, it would require someone with much more programming knowledge than either you or I possess.

      Here you go. :)
      https://kmcallister.github.io/papers/2015-servo-experience-report-draft1.pdf

  8. Earl said on December 9, 2015 at 7:56 pm
    Reply

    Hey, substitute a few words here and there, and they could be talking about XUL and Gecko from a decade ago. Well, maybe their new 5-year plan will work out better for them than their last 5-year plan… though I tend to doubt it.

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.