Latest version of Firefox will require Rust to compile successfully, restricting the number of platforms that the browser can be ported to Credit: cortixxx Mozilla always intended for Rust to be used in building key parts of the Firefox browser. Now the company is committing to that vision in a significant manner. After version 53, Firefox will require Rust to compile successfully, due to the presence of Firefox components built with the language. But this decision may restrict the number of platforms that Firefox can be ported to—for now. Rust, Mozilla Research’s language for fast and safe system-level programming, is on the eve of a new release. Rust 1.15’s most notable new feature is a revamped build system written in Rust and using Rust’s native Cargo package management. Previously, Rust was built with makefiles; with this change, Rust can be built using Cargo “crates” like any other Rust project. It’s one of many steps that Rust has taken toward becoming its own ecosystem, not dependent on pieces built by others. As Rust has matured and stabilized, it’s become easier for Firefox developers to move more of the browser’s critical infrastructure to that language. But there’s a downside: Any platform where you intend to build and run Firefox will need a working edition of the Rust compiler. Rust is meant to be cross-platform, so this should be possible. However, the practical implications are more complex. Rust depends on LLVM, which has dependencies of its own—and all of them would need to be supported on the target platform. A discussion on the Bugzilla tracker for Firefox raises many of these points. Other concerns also bubbled up: What about proper support for Linux distributions with long-term support, where the tools available on the distro are often frozen, and where newer Rust features might not be available? What about support for Firefox on “non-tier-1” platforms, which make up a smaller share of Firefox users? Mozilla’s stance is that in the long run, the pain of transition will be worth it. “The advantage of using Rust is too great,” according to maintainer Ted Mielczarek. “We normally don’t go out of our way to make life harder for people maintaining Firefox ports, but in this case we can’t let lesser-used platforms restrict us from using Rust in Firefox,” he wrote. The platforms most likely to be affected by this decision, according to a discussion in the Bugzilla thread, are nondesktop architectures like IBM’s S390. As a result, it’s possible that those who ship Linux distributions for those architectures—as Red Hat does with Fedora—will simply drop Firefox support for the builds that do not yet fully support Rust. Most Firefox users won’t be affected by this. The best hope for those who are, will be to marshal efforts to build out whatever platforms need Rust support—simultaneously driving development for both Firefox and Rust. Conventional Firefox users, though, care more about the end result—a promised rejuvenation that will keep the browser speedy and feature-competitive—and less about the technology used to accomplish it. The pressure’s on not only to move to Rust, but to prove the move was worth it. Related content news ActiveState's Python taps Intel MKL to speed data science and machine learning The MKL libraries for accelerating math operations debuted in Intel's own Python distribution, but now other Pythons are following suit By Serdar Yegulalp May 18, 2017 3 mins Data Science Machine Learning Open Source news CrateDB 2.0 Enterprise stresses security and monitoring—and open source The open source database for processing high-speed freeform data with SQL queries now has enterprise features, available as open source for faster developer uptake By Serdar Yegulalp May 16, 2017 3 mins NoSQL Databases Technology Industry Databases news analysis Waah! WannaCry shifts the blame game into high gear Every security crisis presents the opportunity to point fingers, but that's just wasted energy. The criminals are at fault—and we need to work together to stop them By Fahmida Rashid May 16, 2017 7 mins Small and Medium Business Technology Industry Malware news Faster machine learning is coming to the Linux kernel The addition of heterogenous memory management to the Linux kernel will unlock new ways to speed up GPUs, and potentially other kinds of machine learning hardware By Serdar Yegulalp May 15, 2017 3 mins Technology Industry Machine Learning Open Source Resources Videos