Представлен выпуск браузерного движка Servo 0.0.2, написанного на Rust

Состоялся второй выпуск открытого проекта браузерного движка Servo. Решение написано на языке программирования Rust и опубликовано на GitHub под лицензиями Mozilla Public License 2.0 и BSD 3-Clause License.

В примечании к выпуску Servo 0.0.2 отмечено, что по функциональности эта версия аналогична ночной сборке от 14 ноября, для которой проведено дополнительное ручное тестирование. В команде Servo планируют публиковать новые релизы не менее раза в месяц.

Готовые сборки Servo 0.0.2 представлены для Linux, Android, macOS и Windows.

Движок Servo изначально развивался компанией Mozilla, но затем перешёл под покровительство организации Linux Foundation.

Решение Servo отличается поддержкой многопоточного рендеринга веб‑страниц, распараллеливанием операций с DOM (Document Object Model) и задействованием предоставляемых языком Rust механизмов безопасного программирования.

Проект Servo изначально создан с поддержкой разбиения кода DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. В Firefox уже интегрированы некоторые части Servo, такие как многопоточный CSS‑движок и система отрисовки WebRender. Также на базе Servo развивается демонстрационный браузер ServoShell.

Основные изменения и доработки Servo 0.0.2:

включена по умолчанию поддержка XPath (XML Path Language), AbortController и AbortSignal.

добавлены API CompressionStream и DecompressionStream для сжатия и распаковки потоков данных.

добавлена поддержка элемента внутри блоков

реализованы методы fetchLater() и Document.parseHTMLUnsafe().

в событии UIEvent реализованы свойства «which» и «relatedTarget„. „““»

в API HTMLMapElement реализованы свойства «name» и «bareas„. „““»

в движке отрисовки реализовано синтезированное жирное начертание символов (synthetic bold), при котором символы утолщаются программно без использования отдельного начертания шрифта.

добавлена поддержка vsync для синхронизации начала отрисовки с кадровым гасящим импульсом.

началось формирование родных arm64-сборок браузера ServoShell для macOS.

в прототипе браузера ServoShell для Android реализован экспериментальный режим, при котором активируются отключённые по умолчанию экспериментальные возможности, ещё до конца не стабилизированные и находящиеся в разработке. Обеспечена доставка событий касания к сенсорному экрану и вывод экранной клавиатуры при активации форм ввода событиями сенсорного экрана. Добавлена поддержка масштабирования щипком. Разрешена прокрутка экранной клавиатуры при её масштабировании.

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии