Опубликован выпуск Servo 0.4.0 — экспериментального браузерного движка, написанного на языке Rust. Релиз состоялся 31 июля 2026 года и объединил 558 изменений, внесённых в проект в течение июня. Готовые сборки демонстрационной оболочки Servo распространяются для Linux, macOS, Windows, Android и OpenHarmony. Исходный код доступен под лицензией MPL 2.0.
Servo создаётся как лёгкий и встраиваемый движок для отображения веб-содержимого в сторонних приложениях. Проект не следует воспринимать как полностью готовую замену Firefox или Chromium: поставляемая вместе с ним оболочка Servoshell прежде всего предназначена для демонстрации возможностей движка и его тестирования. При этом разработчики постепенно улучшают совместимость с настоящими сайтами и формируют стабильный интерфейс для внедрения Servo в другие программы.
В версии 0.4.0 заметно улучшилось отображение сайтов. Разработчики отмечают более правильную компоновку страниц Lichess, а усовершенствованная поддержка вариативных шрифтов сделала значительно читабельнее интерфейсы Zulip и Speedtest. Google Photos и некоторые другие сложные веб-приложения уже работают в Servo, тогда как Google Maps и OpenStreetMap отображаются достаточно хорошо, но пока сохраняют проблемы с интерактивными элементами. Сравнительные снимки Servo 0.3.0 и 0.4.0 опубликованы в официальном отчёте проекта.
Основные изменения Servo 0.4.0:
( читать дальше... )
servo, web, браузер
Опубликован выпуск Servo 0.4.0 — экспериментального браузерного движка, написанного на языке Rust. Релиз состоялся 31 июля 2026 года и объединил 558 изменений, внесённых в проект в течение июня. Готовые сборки демонстрационной оболочки Servo распространяются для Linux, macOS, Windows, Android и OpenHarmony. Исходный код доступен под лицензией MPL 2.0.
Servo создаётся как лёгкий и встраиваемый движок для отображения веб-содержимого в сторонних приложениях. Проект не следует воспринимать как полностью готовую замену Firefox или Chromium: поставляемая вместе с ним оболочка Servoshell прежде всего предназначена для демонстрации возможностей движка и его тестирования. При этом разработчики постепенно улучшают совместимость с настоящими сайтами и формируют стабильный интерфейс для внедрения Servo в другие программы.
В версии 0.4.0 заметно улучшилось отображение сайтов. Разработчики отмечают более правильную компоновку страниц Lichess, а усовершенствованная поддержка вариативных шрифтов сделала значительно читабельнее интерфейсы Zulip и Speedtest. Google Photos и некоторые другие сложные веб-приложения уже работают в Servo, тогда как Google Maps и OpenStreetMap отображаются достаточно хорошо, но пока сохраняют проблемы с интерактивными элементами. Сравнительные снимки Servo 0.3.0 и 0.4.0 опубликованы в официальном отчёте проекта.
Основные изменения Servo 0.4.0:
Расширена поддержка медиазапросов CSS. Реализованы условия device-width, device-height, height, aspect-ratio, orientation, pointer, hover, а также варианты min- и max-. Это позволяет сайтам точнее адаптировать оформление к размеру экрана, его ориентации и возможностям устройства ввода.
Добавлен SharedWorker. Новый DOM API позволяет нескольким вкладкам и окнам одного сайта использовать общий фоновый JavaScript-процесс. Также появились console.dir(), потоковое чтение текста через textStream() и методы захвата указателя setPointerCapture(), releasePointerCapture() и hasPointerCapture().
Развивается поддержка пользовательских элементов. CustomElementRegistry теперь может быть связан не только с глобальным объектом, но и с отдельными документами и теневыми деревьями. Добавлены конструктор реестра и метод его инициализации.
Улучшена реализация CSS. В экспериментальном режиме появился расширенный вариант функции attr(). Добавлена поддержка image(<color>), новых параметров для circle() и ellipse(), свойства font-feature-settings внутри @font-face, а вычисление выражений calc() в некоторых случаях можно откладывать до этапа формирования макета страницы.
Продолжена работа над WebGPU. Реализованы копирование внешних изображений в текстуры, наборы запросов и отладочные группы команд. Повышена совместимость объектов GPUTexture, выбора графического адаптера и проверки защищённого контекста. Эти функции пока активируются через экспериментальный режим Servoshell.
Улучшена демонстрационная оболочка. В настольной версии файлы теперь можно открывать перетаскиванием в окно, а панель вкладок прокручивается горизонтально при большом числе открытых страниц. Минимальной поддерживаемой версией мобильной системы стала Android 13; интерфейс Android-варианта переведён на Compose UI и Kotlin.
Полный перечень новых Web API и связанных изменений приведён в июньском отчёте Servo.
Отдельное внимание уделено безопасности. Используемый Servo движок JavaScript SpiderMonkey сначала обновили с версии 140.10.1 до 140.11.0. Обновление устранило в том числе уязвимости CVE-2026-8388, CVE-2026-8391, CVE-2026-8974 и CVE-2026-8975, описанные в бюллетене MFSA 2026-48. Затем SpiderMonkey довели до версии 140.12.0, включив дополнительные исправления из MFSA 2026-58. Разработчики Servo уточняют, что на момент публикации ещё не было установлено, какие именно перечисленные в этом бюллетене уязвимости применимы к движку.
Исправлена возможность внедрения HTML и JavaScript в автоматически создаваемые списки файлов при открытии локальных каталогов через file://. Операции RSA и отдельный этап алгоритма ML-DSA переведены на выполнение с постоянным временем, хотя разработчики предупреждают, что текущая реализация RSA всё ещё подвержена атаке Marvin.
В интерфейсе встраивания появился метод получения контекста отрисовки из WebView, расширена документация публичного API и удалён внутренний метод send_error. Поскольку Rust пока не обладает стабильным двоичным интерфейсом, команда также начала проектировать обёртку на языке C. В перспективе она позволит подключать Servo как готовую динамическую библиотеку, не собирая весь движок вместе с приложением из исходного кода.
В числе находящихся в разработке возможностей названы видимое выделение текста, Web Animations, дальнейшее развитие доступности и расширенная реализация attr(). Загрузить Servo 0.4.0 и посмотреть полный автоматически сформированный список изменений можно на странице выпусков проекта.
>>> Подробности
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Servo 0.3 Released With The Demo Browser Becoming More Useful | 2 | 7 | 25-06-2026 |
| 2 | Google без официального анонса опубликовала Chrome для Linux на ARM64 | 0 | 16.61 | 29-07-2026 |
| 3 | FireDragon 13 | 0 | 25.77 | 28-07-2026 |
| 4 | Dasharo 0.9.0 | 0 | 24.7 | 02-08-2026 |
| 5 | Looking for contributors: Rust transparent proxy & protocol parsing project | 5 | 7 | 08-07-2026 |
| 6 | fooyin 0.12.0 | 0 | 23.93 | 28-07-2026 |
| 7 | Vibe Coded X11 YSERVER Gets Steam Working, Full-Screen Games With Cinnamon | 0 | 7.77 | 29-07-2026 |
| 8 | Выпуск операционной системы NetBSD 11.0 | 0 | 22.47 | 01-08-2026 |
| 9 | Первый тестовый выпуск композитного сервера Xfwl4 от проекта Xfce | 0 | 7 | 22-06-2026 |
| 10 | Daily Hacker News for 2026-07-27 | 0 | 8.98 | 28-07-2026 |