[ad_1]
Саммит открытого исходного кода Приятным сюрпризом от Open Source Summit стало то, что Servo, движок рендеринга Rusty, над которым работала Mozilla (то есть до появления COVID), показывает ростки новой силы.
Servo существует уже около десяти лет, поэтому с точки зрения экспериментальных программных проектов он является зрелым. Разработчик Igalia Мануэль Рего представил доклад, в котором сообщается, что проект снова находится в активной разработке, почти ровно через три года после того, как Mozilla прекратила разработку Rust и уволила всю команду Rust, включая разработчиков Servo.
В ноябре 2020 года Linux Foundation принял Servo. Однако проектов у глобальной операции немало – мы думаем, что насчитали их 625, но можем ошибаться. В начале этого года компания передала проект своему новому европейскому подразделению, у которого есть немного более управляемый список из четырех, среди которых фонд OpenWallet и экосистема программного обеспечения RISC-V. Теперь это также включает в себя Servo.
Servo впервые появился в тандеме с Rust десять лет назад, и к 2016 году Mozilla обсуждала выпуск прототипа. Превью начали появляться в июле того же года, когда, как мы выразились: «Если Google есть язык Го, у Моза есть язык Нет: Rust».
Новый двигатель вполне боеспособен. Он поддерживает устаревший API WebGL, а также его более современный преемник WebGPU, который гораздо более мощный. На данный момент, по словам Рего, он в основном нацелен на Windows, macOS и настольный Linux, хотя команда также тестирует мобильные версии как для Android, так и для более общего Linux, первоначально тестируемого на PinePhone от Pine64. Pro аппаратное обеспечение.
Помимо того, что он не зависит от какого-либо поставщика браузера, он спроектирован так, чтобы быть встраиваемым, безопасным для памяти, модульным и параллельным. Последний, в частности, выигрывает от функций параллелизма, предоставляемых Rust. В этом году проект получил 1682 коммита от 77 разработчиков по сравнению с 523 коммитами от 22 человек в 2022 году. Большим изменением стал новый движок компоновки, заменяющий то, что сейчас называется устаревшим движком.
Он до сих пор не может пройти тесты ACID проекта Web Standards Project, с которыми еще в 2008 году WebKit был первым браузером, который успешно справился, так что явно еще есть над чем работать. Несмотря на это, презентация Рего [PDF] иллюстрирует улучшения, достигнутые в этом году.
По крайней мере, на данный момент его цели не являются полноценным веб-браузером. Однако одной из целей является создание веб-среды выполнения, которую можно встроить в автономные локальные веб-приложения. На данный момент Electron.js является доминирующим инструментом в этой области, но он основан на движке Chromium и, следовательно, является еще одним винтиком в гиганте. Google машина. Однако для того, чтобы это работало, ему также нужна среда выполнения JavaScript, которую Servo не включает. Для этого он зависит от SpiderMonkey от Mozilla, который также является основой GJS рабочего стола GNOME и, соответственно, CJS Cinnamon.
База кода SpiderMonkey гораздо менее современна, чем сам Servo: она наполовину состоит из C++ и на четверть из C, а также немного Java. Мы подозреваем, что для рустацев это считается неудобным устаревшим кодом. Среда выполнения Rust JavaScript под названием Boa существует, но она все еще находится на ранних стадиях разработки.
Современных движков веб-рендеринга существует не так уж и много, и некоторые из них являются близкими родственниками: Blink Chrome является производным от Apple WebKit, который сам является производным от KHTML от KDE. Gecko от Firefox является основным независимым браузером, который до сих пор существует. Поскольку Mozilla прекратила разработку своего преемника, приятно знать, что он снова находится в активной разработке. Большая часть мира объединена сетью, и если бы она полностью контролировалась одной компанией, это было бы страшно. ®
YouTube видео
[ad_2]