GNOME's SVG Rendering Library Migrating To Rust

Written by Michael Larabel in GNOME on 4 January 2017 at 04:33 PM EST. 59 Comments
GNOME
The librsvg library for SVG rendering is up to version 2.41.0 and with this milestone it's their first release to port some code to Rust while maintaining the same public API.

The GNOME project's Librsvg 2.41.0 implements some parts of the library in the Rust programming language rather than C. The developers decided to do this partial Rust migration for better memory safety, nicer built-in abstractions, and easier for unit testing.

Among the librsvg code rewritten so far in Rust includes marker orientations and rendering, path data parser, path building, length normalization, gradient inheritance, and bounding boxes with affine transformations. Will be interesting to see what else in the GNOME space ends up adopting Rust in future releases.

This librsvg release also has some code clean-ups, some minor optimizations, and a variety of fixes. More details on librsvg via this release announcement. For related reading in case you missed it yesterday: Whether You Should Translate Your Code To Rust.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week