News: 0001535592

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Google Chrome Replacing FreeType With Rust-Written Skrifa For Font Handling

([Google] 23 Minutes Ago FreeType To Skrifa)


The Google Chrome web browser is moving away from the FreeType font rendering library and instead pursuing their Skrifa project that is written in Rust for better memory safety around handling fonts on the web.

Skrifa is written by Google engineers in the Rust programming language and aiming for better security than FreeType for font handling within web browsers. Due to FreeType being the primary font processing library across Android, ChromeOS, and Linux, any vulnerabilities affecting it are potentially catastrophic for a web browser when loading remote/unsafe web fonts and more.

Skrifa is written in Rust and aims to tackle the subset of FreeType functionality used by Google's Skia graphics library. Since Chrome 133 last month Skrifa as part of the Fontations libraries is being used on Linux, Android, and Chrome OS as well as a fallback on Windows and macOS.

Google noted in a blog post this week:

"We are very pleased with the results of our efforts to use Rust for text. Delivering safer code to users and gaining developer productivity is a huge win for us. We plan to continue to seek opportunities to use Rust in our text stacks. If you'd like to know more, Oxidize outlines some of Google Fonts future plans."

More details on this Skrifa replacement to FreeType via [1]the Google Chrome Developer Blog .



[1] https://developer.chrome.com/blog/memory-safety-fonts



mos87

mos87

A comment on schedules:
Ok, how long will it take?
For each manager involved in initial meetings add one month.
For each manager who says "data flow analysis" add another month.
For each unique end-user type add one month.
For each unknown software package to be employed add two months.
For each unknown hardware device add two months.
For each 100 miles between developer and installation add one month.
For each type of communication channel add one month.
If an IBM mainframe shop is involved and you are working on a non-IBM
system add 6 months.
If an IBM mainframe shop is involved and you are working on an IBM
system add 9 months.
Round up to the nearest half-year.
--Brad Sherman
By the way, ALL software projects are done by iterative prototyping.
Some companies call their prototypes "releases", that's all.