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

Основни промени:
- В HTML елемента
- Добавена е поддръжка за предварително зареждане на ресурси, използвайки тага , с помощта на който можем да организираме зареждането на ресурси, без да чакаме да бъдат поискани, например, можем веднага да заредим определени CSS файлове, скриптове, видеа и изображения.
- В HTML елементите 'style' и 'link' е реализирана поддръжка на свойството 'blocking' за спиране на рендеринга на страницата до завършване на зареждането на ресурса.
- В HTML елемента 'img' е добавена поддръжка на свойството 'align' за управление на подравняването на изображението.
- В HTML елемента 'select' е добавена поддръжка на свойството 'disabled' за деактивиране на падащото меню.
- Добавена е поддръжка на свойството 'cursor-color' за промяна на цвета на курсора в полетата за въвеждане.
- Добавена е поддръжка за прилагане на CSS свойството 'content' за замяна на всеки HTML елемент с изображение.
- Добавена е поддръжка на псевдоелемента '::details-content' за промяна на стила на съдържанието, зададено чрез HTML елемента .
- В HTML елемента е добавена поддръжка на псевдокласа ':open', сработващ при отваряне на диалога.
- За HTML елемента е реализирана поддръжка на псевдокласа ':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 секунди).
Източник: opennet.ru
