Выпуск браузерного движка Servo 0.0.5
Опубликован выпуск браузерного движка Servo 0.0.5 и развиваемого вместе с ним демонстрационного браузера ServoShell, написанных на языке Rust. Готовые сборки сформированы для Linux, Android, macOS и Windows.
Движок изначально развивался компанией Mozilla, но затем перешёл под покровительство организации Linux Foundation. Servo отличается поддержкой многопоточного рендеринга web-страниц, распараллеливанием операций с DOM (Document Object Model) и задействованием предоставляемых языком Rust механизмов безопасного программирования. Servo изначально создан с поддержкой разбиения кода DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. В Firefox уже интегрированы некоторые части Servo, такие как многопоточный CSS-движок и система отрисовки WebRender.

Основные изменения:
- В HTML-элемент ‹audio› добавлена поддержка воспроизведения файлов в формате OGG.
- Добавлена поддержка упреждающей загрузки ресурсов, используя тег ‹link rel=preload›, при помощи которого можно организовать загрузку ресурсов, не дожидаясь, когда они будут запрошены, например, можно сразу загрузить определённые файлы CSS, скрипты, видео и картинки.
- В HTML-элементах «style» и «link» реализована поддержка свойства «blocking» для приостановки отрисовки страницы до окончанию загрузки ресурса.
- В HTML-элемент «img» добавлена поддержка свойства «align» для управления выравниванием изображения.
- В HTML-элемент «select» добавлена поддержка свойства «disabled» для деактивации выпадающего списка.
- Добавлена поддержка свойства «cursor-color» для изменения цвета курсора в полях ввода.
Добавлена поддержка применения CSS-свойства «content» для замены любого HTML-элемента изображением.
Добавлена поддержка псевдоэлемента »:: details-content» для изменения стиля содержимого, заданного через HTML-элемент ‹details›.
В HTML-элемент ‹details› добавлена поддержка псевдокласса »: open», срабатывающего при открытии диалога.
Для HTML-элемента ‹input type=button› реализована поддержка псевдокласса »: active», действующего в промежуток времени от нажатия до отпускания кнопки.
Добавлен API Origin для получения информации об источнике получения содержимого на уровне связки «протокол + домен + порт».
Реализовано свойство MouseEvent.detail для получения информации о характере клика (одинарный, двойной).
В объект Request добавлено свойство «keepalive» для определения находится ли соединение в состоянии keepalive.
- Добавлена поддержка загрузки через выражения import модулей в формате JSON.
- Добавлена возможность указания атрибутов для указания типа содержимого при импорте через выражение import.
Добавлена поддержка зацикленного импорта JavaScript-модулей.
Включена по умолчанию поддержка интерфейса navigator.sendBeacon, для асинхронной передачи небольших порций данных из браузера на сервер.
Добавлена настройка https_proxy, а также переменные окружения HTTPS_PROXY и NO_PROXY для организации работы через HTTPS-прокси.
В API Crypto добавлена поддержка алгоритмов ML-KEM, ML-DSA и AES-OCB.
- Добавлена поддержка кросскомпиляции, используя в качестве хоста платформу Windows.
Добавлена настройка network_connection_timeout для выставления таймаута установки сетевого соединения (по умолчанию 15 секунд).
Источник: http://www.opennet.ru/opennews/art.shtml? num=64893
OpenNet прочитано 1844 раза
